各位大侠,oracle数据库中有一个blob字段,里面存有doc和jpg,我能用asp读取并把他们显示出来吗?尽可能的提供源码?拜托,谢谢各位!
运行报错,提示内部错误,无法打开页面,代码如下,我的table表里的字段dx为blob型,里面取得是一个doc文件,请问哪儿错了?怎么改?万分感谢!!
<%Set rs=OraDatabase.DbCreateDynaset("select dx from table where id=5",4)
Function
Dim dtimage As New DataTable
dtimage = rs("dx") '获得blob字段内容
Dim btImage As Byte()
btImage = dtimage.Rows(0)("dx")
Dim ms As System.IO.MemoryStream
ms = New MemoryStream(btImage)
'创建一个bitmap,doc的话要引用office的lib而后创建doc
Dim doc As Microsoft.office.Interop.word.document
bmp = New Bitmap(ms)
Return bmp
End Function %>
各位大侠,oracle数据库中有一个blob字段,里面存有doc和jpg,我能用asp读取并把他们显示出来吗?
答案:2 悬赏:20 手机版
解决时间 2021-03-09 07:21
- 提问者网友:酱爆肉
- 2021-03-08 14:00
最佳答案
- 五星知识达人网友:思契十里
- 2021-03-08 15:31
Function GetPic(ByVal id As String) As System.Drawing.Bitmap
Dim dtimage As New DataTable
Dim sqlstr As String = "select picture from tb_pict where id=" & id
dtimage = getOracle(sqlstr) '获得blob字段内容
Dim btImage As Byte()
btImage = dtimage.Rows(0)("picture")
Dim ms As System.IO.MemoryStream
ms = New MemoryStream(btImage)
'创建一个bitmap,doc的话要引用office的lib而后创建doc
Dim bmp As System.Drawing.Bitmap
bmp = New Bitmap(ms)
Return bmp
End Function
Dim dtimage As New DataTable
Dim sqlstr As String = "select picture from tb_pict where id=" & id
dtimage = getOracle(sqlstr) '获得blob字段内容
Dim btImage As Byte()
btImage = dtimage.Rows(0)("picture")
Dim ms As System.IO.MemoryStream
ms = New MemoryStream(btImage)
'创建一个bitmap,doc的话要引用office的lib而后创建doc
Dim bmp As System.Drawing.Bitmap
bmp = New Bitmap(ms)
Return bmp
End Function
全部回答
- 1楼网友:傲气稳了全场
- 2021-03-08 16:13
二进制不能直接转化,blob可能存放的是普通文件,比如图片,txt,等,也可以存储纯文本(当然这种情况下就没必要用blob了), 需要通过外部程序进行处理,使用blob是不得已的情况下才用的,比如要存储文件,因为有时候会造成很大的不方便,比如使用dblink就不能查询blob字段,这点要注意
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯