UPDATE语句vb 2010中的语法错误

时间:2014-12-12 07:09:50

标签: vb.net

我的代码遇到了问题。我找不到解决方案。当我运行我的程序时,它总是给我一个错误

  UPDATE语句中的

语法错误

这是代码。

    Try
        cmd.Connection = conn
        cmd.CommandText = "UPDATE BC_Inventory SET [Price]='" + PriceU.Text + "',[Addition]='" + AddU.Text + "'," + _
        "[Date_Updated]='" + DateU.Text + "',[Time_Updated]='" + TimeU.Text + "',[Updated_By]='" + UpdatedBy.Text + "'," + _
        "WHERE [Item]='" + com_ItemU.Text + "'"
        cmd.ExecuteNonQuery()
    Catch ex As Exception
        MessageBox.Show(ex.Message, "Error")
    Finally
        conn.Close()
    End Try
    MsgBox("Inventory updated!")

3 个答案:

答案 0 :(得分:0)

请尝试此代码

    cmd.CommandText = "UPDATE BC_Inventory SET [Price]='" + PriceU.Text + "',[Addition]='" + AddU.Text + "'," + _
    "[Date_Updated]='" + DateU.Text + "',[Time_Updated]='" + TimeU.Text + "',[Updated_By]='" + UpdatedBy.Text + "' " + _
    "WHERE [Item]='" + com_ItemU.Text + "'"

答案 1 :(得分:0)

您在","[Updated_By]< - extra [Updated_By]='" + UpdatedBy.Text + "',")之后添加了额外的",",这会产生语法错误

答案 2 :(得分:0)

在执行之前以某种方式打印您的查询,即标准调试101.

这往往会解决所有 SQL语句问题的97.2%(a)

由此,我的意思是:

cmd.CommandText = "some hideously long and complex statement"
MessageBox (cmd.CommandText) ' Add this debug line temporarily'
cmd.ExecuteNonQuery()

在这种特殊情况下,它是where子句之前的逗号。


(a)我刚把这个数字从以太中拉出来。 实际结果可能会有所不同,但我打赌它会修复比更多的问题: - )