-1
当我更新表单时,只有当我不更新(更改)图像时才会出现此错误。
当我用新图片更新时,我没有这个错误。GDI +在更新时发生了一般性错误
Try
Dim mstream As New System.IO.MemoryStream()
PictureBox1.Image = New Bitmap(Image.FromStream(mstream))
Dim arrImage() As Byte = mstream.GetBuffer()
mstream.Close()
MysqlConn.Close()
MysqlConn.Open()
COMMAND.Connection = MysqlConn
COMMAND.CommandText = "update product set
[email protected],
[email protected]
where id = '" & TextBox1.Text & "'"
COMMAND.Parameters.AddWithValue("@Value1", If(String.IsNullOrEmpty(ComboBox1.Text), DBNull.Value, ComboBox1.Text))
COMMAND.Parameters.AddWithValue("@foto", arrImage)
READER = COMMAND.ExecuteReader
MessageBox.Show("Datos Guardados")
MysqlConn.Close()
Catch ex As Exception
MessageBox.Show(ex.Message)
Finally
MysqlConn.Dispose()
End Try
MysqlConn.Close()
我不明白你的代码是如何工作的。在第一行中,您正在初始化一个未提供任何参数的新MemoryStream,然后立即尝试从中获取图像?也请确定导致异常的确切代码行,并请发布完整的异常详情。 – DeanOC
你是什么意思'当我不更新(改变)图像'你的代码显示图像数据被传递,不管是什么。除了上面的代码外,还有很多错误:a)不使用'GetBuffer()',使用'ToArray' - 考虑不保存图像,而是保存到某个归档位置的文件的名称; b)不要使用'AddWithValue()'使用'Add(string,dbType).Value = ...'形式c)总是使用SQL参数,包括WHERE子句目标d)ExecuteNonQuery比DataReader更好 – Plutonix
@DeanOC不幸的是有了这个错误,'一个通用的错误... * * *是细节。 – Plutonix