image字段的问题,来者有分!

wangwei8117 2004-12-22 09:24:38
SQL里面定义了一个image类型的字段,不知道是不是可以直接把图象信息直接存到里面去啊,存储的是什么类型的图象,是怎样操作的,请高手指点!
...全文
116 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
jim138 2004-12-24
  • 打赏
  • 举报
回复
好好看看zjcxc(邹建) 的贴,已给出了答案.
是VB用ADO实现的.其他语言差不多一样,
hnzpf 2004-12-24
  • 打赏
  • 举报
回复
sql中image项存储的是二进制流,输入时他把图象转化成二进制流,输出二进制流,然后有不同的软件解释为图像。
sql安装目录下有相应的测试命令将图像输入、输出。
textcopy +'服务器名',+‘用户名’+‘密码’+‘数据库名’+‘表名’+‘字段名’+‘图像路径’+‘输入(i)/输出(o)’
chyf212 2004-12-22
  • 打赏
  • 举报
回复
认真学习
jixinming 2004-12-22
  • 打赏
  • 举报
回复
来了
wangwei8117 2004-12-22
  • 打赏
  • 举报
回复
是不是要把图象转化成二进制流啊,然后直接把二进制存进去啊,怎么转化呢,多谢了啊!
zjcxc 2004-12-22
  • 打赏
  • 举报
回复
--一般是通过文件来存取的,参考:


'VB/VBA中实现数据库中的文件存取

'示例数据库为ACCESS数据库,用SQL数据库的话,只需要改连接字符串
'
'*************************************************************************
'**
'** 使用 ADODB.Stream 保存/读取文件到数据库
'** 引用 Microsoft ActiveX Data Objects 2.5 Library 及以上版本
'**
'** ----- 数据库连接字符串模板 ---------------------------------------
'** ACCESS数据库
'** iConcStr = "Provider=Microsoft.Jet.OLEDB.4.0;Persist Security Info=False" & _
'** ";Data Source=数据库名"
'**
'** SQL数据库
'** iConcStr = "Provider=SQLOLEDB.1;Persist Security Info=True;" & _
'** "User ID=用户名;Password=密码;Initial Catalog=数据库名;Data Source=SQL服务器名"
'**
'*************************************************************************
'
'保存文件到数据库中
Sub s_SaveFile()
Dim iStm As ADODB.Stream
Dim iRe As ADODB.Recordset
Dim iConcStr As String

'ACCESS数据库的连接字符串
iConcStr = "Provider=Microsoft.Jet.OLEDB.4.0;Persist Security Info=False" & _
";Data Source=F:\My Documents\客户资料1.mdb"

'SQL数据库的连接字符串
iConcStr = "Provider=SQLOLEDB.1;Persist Security Info=True;" & _
"User ID=用户名;Password=密码;Initial Catalog=数据库名;Data Source=SQL服务器名"
'读取文件到内容
Set iStm = New ADODB.Stream
With iStm
.Type = adTypeBinary '二进制模式
.Open
.LoadFromFile "c:\test.doc"
End With

'打开保存文件的表
Set iRe = New ADODB.Recordset
With iRe
.Open "表", iConc, adOpenKeyset, adLockOptimistic
.AddNew '新增一条记录
.Fields("保存文件内容的字段") = iStm.Read
.Update
End With

'完成后关闭对象
iRe.Close
iStm.Close
End Sub

'从数据库中读取数据,保存成文件
Sub s_ReadFile()
Dim iStm As ADODB.Stream
Dim iRe As ADODB.Recordset
Dim iConc As String

'数据库连接字符串
iConc = "Provider=Microsoft.Jet.OLEDB.4.0;Persist Security Info=False" & _
";Data Source=\\xz\c$\Inetpub\zj\zj\zj.mdb"

'打开表
Set iRe = New ADODB.Recordset
iRe.Open "tb_img", iConc, adOpenKeyset, adLockReadOnly
iRe.Filter = "id=64"

if iRe("img").ActualSize>0 Then

'保存到文件
Set iStm = New ADODB.Stream
With iStm
.Mode = adModeReadWrite
.Type = adTypeBinary
.Open
.Write iRe("img")
.SaveToFile "c:\test.doc"
End With

'关闭对象
iStm.Close
End If

iRe.Close
End Sub
zjcxc 2004-12-22
  • 打赏
  • 举报
回复
可以,只要你把图像的二进制流写成16进制的字符格式就行了

登录:
insert 表(image字段) values(0x23423ff)
了缘 2004-12-22
  • 打赏
  • 举报
回复
可以,是二进制的数据
我是来接分的

27,580

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 应用实例
社区管理员
  • 应用实例社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧