我正在尝试将图像插入到我的 MS Access 2007 数据库中。我选择的数据类型是“OLEObject”,字段名是“Image”。我尝试了以下在按下按钮时执行的代码:
Private Sub ButtonPress()
Dim cmd As New OleDbCommand
Dim MemStream As New IO.MemoryStream
Dim DataPic_Update As Byte()
Dim strImage As String
If Not IsNothing(PictureBox1.Image) Then
PictureBox1.Image.Save(MemStream, Imaging.ImageFormat.Png)
DataPic_Update = MemStream.GetBuffer
MemStream.Read(DataPic_Update, 0, MemStream.Length)
strImage = "?"
MemStream.Close()
Else
DataPic_Update = Nothing
strImage = "NULL"
End If
con.Open()
cmd.CommandText = "INSERT INTO Inventory([Image])" + "VALUES(@Image)"
cmd.Parameters.Add("@Image", OleDbType.Binary).Value = DataPic_Update
cmd.Connection = con
cmd.ExecuteNonQuery()
con.Close()
End Sub
执行命令“ExecuteNonQuery”时,出现以下错误:
“标准表达式中的数据类型不匹配。”
我无法解决此错误。有人可以帮我解决现有代码中所需的任何建议或修改吗?我想插入图像,然后从访问数据库中检索。