首页 > 解决方案 > 错误 [42000] [MySQL][ODBC 8.0(w) 驱动程序][mysqld-5.6.44-cll-lve]您的 SQL 语法有错误

问题描述

HELLO 很抱歉打扰您,但也许您可以帮助我,我正在尝试将图像保存到 MySQL 数据库中,但我在某处遇到错误,我不知道还能做什么.. 我正在开发 VB.net 应用程序所以这是代码:

Private Function Imagen_Bytes(ByVal Imagen As Image) As Byte()
        If Not Imagen Is Nothing Then
            Dim Bin As New MemoryStream
            Imagen.Save(Bin, Imaging.ImageFormat.Jpeg)
            Return Bin.GetBuffer
        Else
            Return Nothing
        End If
End Function

这是“保存”按钮上的代码:

Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
        Try
            Dim SQL As String = "INSERT INTO `ImagenPrueba`(`imagen`) VALUES (?foto)"<--SYNTAX ERROR HERE
            CNN = New OdbcConnection(StrConexion)
            Dim Comando As New OdbcCommand(SQL, CNN)
            Dim IMAG As Byte()
            IMAG = Imagen_Bytes(Me.UserPictureBox.Image)

            Comando.Parameters.AddWithValue("?foto", IMAG)

            CNN.Open()
            If cnn.State = ConnectionState.Open Then
                Comando.ExecuteNonQuery()
            End If
            cnn.Close()
            MsgBox("OKKKK")
        Catch ex As Exception
            MessageBox.Show(ex.Message)
        End Try
End Sub

当我尝试保存图像时,系统会抛出此错误:

ERROR [42000] [MySQL][ODBC 8.0(w) Driver][mysqld-5.6.44-cll-lve]您的 SQL 语法有错误;检查与您的 MySQL 服务器版本相对应的手册,以在第 1 行的 '?foto)' 附近使用正确的语法

您可以给我的任何帮助都非常感谢。

标签: mysqlvb.netimage

解决方案


推荐阅读