其实很好解决,存放图片的字段类型可以为image,我不知道你前台用什么开发工具,不过SQL语句应该差不多,一般作法是先往数据表插入一条记录,然后用updateblob tablename set piccol = :lbob_pic where ...
其中piccol即为image型字段,在前台程序中先把图片转换成blob类型的变量,各种前台工具可能转换方法不一样
以前的贴子也有,可以搜一下!
其中piccol即为image型字段,在前台程序中先把图片转换成blob类型的变量,各种前台工具可能转换方法不一样
以前的贴子也有,可以搜一下!
解决方案 »
- sql数据,表新建发布再用发布语句生成,前后两个一样的表,有什么不同之处
- SQL SERVER2005远程连接问题
- 看下我的错误
- 请帮忙解决一个分组的问题谢谢
- 存储过程中如何给top @num 传递参数?
- 存储过程问题
- 通行列转换(version 2.0) 爱新觉罗.毓华版本的疑难问题
- 通过读取哪个表的信息,可以随意读出本数据库中任意一个表的表结构。
- 关于转换数据库的一个问题,还请各位大虾相助!不胜感激!!!!!!!!!!
- sql如何删除连续3分钟及以上速度为0的数据
- 求助!怎么样在SQL2000里存储图片?在线等待!!
- 一个产品有一张图片,大小大概为1M,有1000条产品记录,大概要多少空间?急!!!
下面是一个拷贝图像到SQL Server的pubs数据库的例子, 表名pub_info, 字段名logo,图像文件名picture.bmp,保存到pub_id='0736'记录
sp_textcopy @srvn
ame = 'ServerName',
@login = 'Login',
@password = 'Password',
@dbname = 'pubs',
@tbname = 'pub_info',
@colname = 'logo',
@filename = 'c:\picture.bmp',
@whereclause = " WHERE pub_id='0736' ",
@direction = 'I'
Dim cnn As New ADODB.Connection
Dim rs As New ADODB.Recordset
Dim stm As ADODB.Stream `把图片保存到数据库
Private Sub SavePictureToDB(cn As ADODB.Connection)
Set stm = New ADODB.Stream
rs.Open "select * from image", cn, adOpenKeyset, adLockOptimistic
With stm
.Type = adTypeBinary
.Open
.LoadFromFile "e:\aaa\052.jpg"
End With
With rs
.AddNew
.Fields("Image") = stm.Read
.Update
End With
rs.Close
Set rs = Nothing
End Sub
`把图片从数据库取出
Private Sub LoadPictureFromDB(cn As ADODB.Connection)
Dim fld As Field
Dim strTemp As String
Set stm = New ADODB.Stream
strTemp = "c:\temp.tmp" `临时文件,用来保存读出的图片
rs.Open "select * from image", cn, , , adCmdText
MSHFlexGrid1.Redraw = False `增强性能
Do Until rs.EOF
For Each fld In rs.Fields
If fld.Type = adLongVarBinary Then
With stm
.Type = adTypeBinary
.Open
.Write fld.value
.SaveToFile strTemp, adSaveCreateOverWrite
.Close
End With
MSHFlexGrid1.Row = MSHFlexGrid1.Rows - 1
Set MSHFlexGrid1.CellPicture = LoadPicture(strTemp) `在mshflexgrid里显示图片
End If
Next fld
MSHFlexGrid1.Rows = MSHFlexGrid1.Rows + 1
rs.MoveNext
Loop
Set stm = Nothing
MSHFlexGrid1.Rows = MSHFlexGrid1.Rows - 1
MSHFlexGrid1.Redraw = True
rs.Close
Set rs = Nothing
Image1.Picture = LoadPicture(strTemp) `在image控件里显示最后一张图片
End Sub