Vb.net 与update语句有关的问题

Vb.net 与update语句有关的问题,vb.net,Vb.net,您好,我有一些问题的代码,这是为了更新一个数据库中的图像位,谁能告诉我我做错了什么 代码如下 Dim SqlString1 As String = "update image set [image]=[@image],[imageno]=[@imageno],[incidentid]=[@incidentid] where [incidentid] = " & lbl_incidentid.Text & "" Using cmd1 As New OleDbCommand

您好,我有一些问题的代码,这是为了更新一个数据库中的图像位,谁能告诉我我做错了什么

代码如下

Dim SqlString1 As String = "update image set [image]=[@image],[imageno]=[@imageno],[incidentid]=[@incidentid] where [incidentid] = " & lbl_incidentid.Text & ""
     Using cmd1 As New OleDbCommand(SqlString1, conn)
        Dim image As New OleDbParameter("@image", ms1.ToArray)
        Dim imageno As New OleDbParameter("@imageno", frm_16_UploadImages.img1.Text)
        Dim incidentid As New OleDbParameter("@incidentid", Me.lbl_incidentid.Text)
        cmd1.Parameters.Add(image)
        cmd1.Parameters.Add(imageno)
        cmd1.Parameters.Add(incidentid)
        cmd1.ExecuteNonQuery()
        cmd1.Dispose()
        ms1.Dispose()
End Using
每次运行时,它都会在UPDATE语句中返回错误消息Syntax error

现在我已经在Access中测试了sql字符串,这很好,当我使用下面的代码插入而不是更新时,它也很好

Dim SqlString1 As String = "insert into [image] ([image],[imageno],[incidentid]) values ([@image],[@imageno],[@incidentid])"
      Using cmd1 As New OleDbCommand(SqlString1, conn)
         Dim image As New OleDbParameter("@image", ms1.ToArray)
         Dim imageno As New OleDbParameter("@imageno", frm_16_UploadImages.img1.Text)
         Dim incidentid As New OleDbParameter("@incidentid", Me.lbl_incidentid.Text)
         cmd1.Parameters.Add(image)
         cmd1.Parameters.Add(imageno)
         cmd1.Parameters.Add(incidentid)
         cmd1.ExecuteNonQuery()
         cmd1.Dispose()
         ms1.Dispose()
End Using

很明显,我的更新代码有问题,但我不知道它是什么。请编辑你的帖子,向我们展示你的图片代码,并尝试一下这个

Dim SqlString1 As String = "update [image] set [image]=" & ms1.ToArray & ",[imageno]=[@imageno],[incidentid]=[@incidentid] where [incidentid] = " & lbl_incidentid.Text & ""
     Using cmd1 As New OleDbCommand(SqlString1, conn)
        Dim image As New OleDbParameter("@image", ms1.ToArray)
        Dim imageno As New OleDbParameter("@imageno", frm_16_UploadImages.img1.Text)
        Dim incidentid As New OleDbParameter("@incidentid", Me.lbl_incidentid.Text)
        cmd1.Parameters.Add(image)
        cmd1.Parameters.Add(imageno)
        cmd1.Parameters.Add(incidentid)
        cmd1.ExecuteNonQuery()
        cmd1.Dispose()
        ms1.Dispose()
End Using

在查询中发现数据库表需要括号的问题,因此它应该已启动

 Dim SqlString1 As String = "update [image] set....... 

更新查询中的SQL没有@incidentid参数(应该是这样)<代码>有一些问题并不能告诉我们出了什么问题。错误?结果?怎么了?Hi@LarsTech抱歉,我已经更新了我的原始帖子,包含了实际的错误消息。我还修改了查询以包含incidentid,但我仍然有相同的错误消息,如果答案错误,我将编辑我的答案,并且您已经编辑了您的帖子。我注意到,因为在SQL中,如果您使用保留字,那么您需要放在括号中