如何将图片存入数据库?

无言无忌 2000-08-03 11:17:00
已用Access建立好数据库,存放图片的字段采用"OLE对象",现在的问题是如何在程序中将图片存入该字段。
...全文
225 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
wxin 2001-03-24
  • 打赏
  • 举报
回复
wulang() :
您好,能不能将源码给我,?13yao@china.com
无言无忌 2000-08-05
  • 打赏
  • 举报
回复
To lczddd:
以前我也是保存图片的路径,在窗口中显示没有问题,但现在需要打印,用ActiveReports或Crystal Report打印,打印时如何根据路径找图片......
lczddd 2000-08-05
  • 打赏
  • 举报
回复
其实有一个好方法:在数据库中存取图片的路径。存取图片不也是在硬盘上么?。。。
取出路径再根据路径找图片。。。
无言无忌 2000-08-05
  • 打赏
  • 举报
回复
TopHead的方法所保存的图片为长二进制数据,非BMP图象,不能用OLE对象读出,用报表(ActiveReports)打印输出;
wulang的方法也不能用报表输出;
wulang 2000-08-04
  • 打赏
  • 举报
回复
将图片直接存入Access数据库适用于图片较少的情况,因为Access数据库文件不能超过100M,当图片较多时,宜采用只将图片路径存入数据库的方法。
songs 2000-08-04
  • 打赏
  • 举报
回复
一本参考书上有,我明天给你答案!(好象比上面要简单)
TopHead 2000-08-04
  • 打赏
  • 举报
回复
'将图片存入数据库
'首先将文件读入一字节数组
' Dim bit() As Byte
' Open "C:\WINDOWS\安装程序.bmp" For Binary As #1
' ReDim bit(LOF(1)) As Byte
' Get 1, 1, bit
' Close 1

'然后将字节数组的内容写入数据库即可
Dim cnn As New ADODB.Connection, rst As New ADODB.Recordset
cnn.Open "Provider=SQLOLEDB.1;Password=test;Persist Security Info=True;User ID=test;Initial Catalog=pubs;Data Source=DB1\SQL1"
rst.Open "T1", cnn, adOpenKeyset, adLockOptimistic
' rst.AddNew
' rst("F1").AppendChunk bit
' rst.Update
'
'将数据库中的图片读出
'首先将数据库中的内容读到一字节数组
Dim bit1() As Byte
bit1 = rst("F1").GetChunk(rst("F1").ActualSize)
'然后将字节数组的内容拼装成文件即可
Open "c:\1.bmp" For Binary As #1
Put 1, 1, bit1
Close 1
' Me.Picture = LoadPicture("c:\1.bmp")

1,216

社区成员

发帖
与我相关
我的任务
社区描述
VB 数据库(包含打印,安装,报表)
社区管理员
  • 数据库(包含打印,安装,报表)社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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