数据库类型是Image类型,给你贴VB代码吧。
'保存图片到数据库中(利用数据流)
Public Sub SaveImageToDB(ByRef fld As ADODB.Field, file As String)
Dim c As New ADODB.Stream
On Error GoTo ErrSave
'如果文件不存在,则不用保存
If FileExists(file) = False Then Exit Sub
'利用数据流保存到数据库中
c.Mode = adModeReadWrite
c.Type = adTypeBinary
c.Open
c.LoadFromFile file
fld.Value = c.Read()
c.Close
Exit Sub
ErrSave:
If Err.Number <> 0 Then
MsgBox Err.Number & ";" & Err.Description, vbInformation + vbOKOnly, "存储图片"
End If
End Sub
Public Sub LoadImageFromDB(ByVal fld As ADODB.Field, objPic As Object)
Dim c As New ADODB.Stream
Dim strFile As String
On Error GoTo errLoad
'如果图片内容为空
If IsNull(fld.Value) Then
objPic.Picture = LoadPicture("")
Exit Sub
End If
'开始从数据库中读取图片
c.Mode = adModeReadWrite
c.Type = adTypeBinary
c.Open
c.Write (fld.Value)
'生成临时文件路径
strFile = g_WinDir & "\Temp"
Call fCreateDir(strFile)
strFile = strFile & "\~" & GetString(False) & ".tmp"
If FileExists(strFile) Then Kill (strFile)
c.SaveToFile strFile, adSaveCreateOverWrite
objPic.Picture = LoadPicture(strFile)
'删除临时文件
Kill strFile
Exit Sub
errLoad:
If Err.Number = 481 Then
Set objPic.Picture = LoadPicture("")
Else
If Err.Number <> 0 Then
MsgBox Err.Number & ";" & Err.Description, vbInformation + vbOKOnly, "加载图片"
End If
End If
End Sub