更新数据库时出现语法错误我在Visual Basic中使用Access

问题描述

这是我的更新按钮代码。我将按照本教程(https://itsourcecode.com/free-projects/vb-net/connect-access-database-in-vb-net/)进行操作,但是我无法使用更新功能。 (“ UPDATE语句中的语法错误。”)

Private Sub Button3_Click(sender As Object,e As EventArgs) Handles btnUpdateItems.Click
        Try
            Dim sql As String
            Dim cmd As New OleDb.OleDbCommand
            Dim i As Integer
            con.Open()
            sql = "UPDATE tblVehicles SET CompanyName='" & txtModelYear.Text & "',ContactName='" & txtMake.Text & "',ContactTitle='" & txtModel.Text & "',Address='" & txtPowertrain.Text & "',City='" & txtBodyStyle.Text & "',Region='" & txtMSRP.Text & "',WHERE tblVehiclesID='" & Me.Text & "'"

            cmd.Connection = con
            cmd.CommandText = sql
            i = cmd.ExecuteNonQuery
            If i > 0 Then
                MsgBox("Record has been UPDATED successfully!")
            Else
                MsgBox("No record has been UPDATED!")
            End If
        Catch ex As Exception
            MsgBox(ex.Message)
        Finally
            con.Close()
        End Try

    End Sub

解决方法

您的逗号过多,我可能会怀疑ID是数字。因此:

sql = "UPDATE tblVehicles SET CompanyName='" & txtModelYear.Text & "',ContactName='" & txtMake.Text & "',ContactTitle='" & txtModel.Text & "',Address='" & txtPowertrain.Text & "',City='" & txtBodyStyle.Text & "',Region='" & txtMSRP.Text & "' 
                                  WHERE tblVehiclesID=" & Me.Text & ""

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...