Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ruby-on-rails-3/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Vb.net 不断得到一个“答案”;System.Data.OleDb.OLEDBEException:&x27;UPDATE语句中的语法错误;错误_Vb.net - Fatal编程技术网

Vb.net 不断得到一个“答案”;System.Data.OleDb.OLEDBEException:&x27;UPDATE语句中的语法错误;错误

Vb.net 不断得到一个“答案”;System.Data.OleDb.OLEDBEException:&x27;UPDATE语句中的语法错误;错误,vb.net,Vb.net,你好,我一直收到一个“System.Data.OleDb.OleDbException:'Syntax error in UPDATE statement”错误 有人能帮忙解释原因和地点吗? 任何帮助都将受到极大的感谢 下面是代码 Try conec.Open() Dim cmd As New OleDbCommand("UPDATE tblCreate Set Username = '" & txtUserName.Text & "', EMa

你好,我一直收到一个“System.Data.OleDb.OleDbException:'Syntax error in UPDATE statement”错误

有人能帮忙解释原因和地点吗?
任何帮助都将受到极大的感谢

下面是代码

Try
        conec.Open()

        Dim cmd As New OleDbCommand("UPDATE tblCreate Set Username = '" & txtUserName.Text & "', EMail = '" & txtEmail.Text & "', FirstName =  '" & TxtName.Text & "', LastName =  '" & txtSurname.Text & "', Access =  '" & cmbAccess.SelectedItem & "', CreatedBY =  '" & Label9.Text & "', DateCreated =  '" & Label10.Text & "', ChangedBY =  '" & Label6.Text & "', DateChanged = '" & Date.Now.ToString("yyyy-MMMM-dd  hh:mm tt") & "' WHERE UserName = " & txtUserName.Text & ";")


        cmd.CommandType = CommandType.Text
        cmd.Connection = conec
        cmd.ExecuteNonQuery()
        MessageBox.Show("Data Updated" & vbCrLf & "Done")
        conec.Close()

    Catch ex As Exception
        MessageBox.Show(ex.Message)
    End Try

如果where子句中缺少撇号,请尝试:

   Dim cmd As New OleDbCommand("UPDATE tblCreate Set Username = '" & txtUserName.Text & "', EMail = '" & txtEmail.Text & "', FirstName =  '" & TxtName.Text & "', LastName =  '" & txtSurname.Text & "', Access =  '" & cmbAccess.SelectedItem & "', CreatedBY =  '" & Label9.Text & "', DateCreated =  '" & Label10.Text & "', ChangedBY =  '" & Label6.Text & "', DateChanged = '" & Date.Now.ToString("yyyy-MMMM-dd  hh:mm tt") & "' WHERE UserName = '" & txtUserName.Text & "';")

我建议使用SQL参数,但它们更易于维护。

始终使用SQL参数。编写SQL并不是那么乏味。另外,请阅读并采取行动