奇怪的更新子句错误(VB.NET)

时间:2016-04-08 15:20:16

标签: vb.net ms-access

我遇到了一个非常奇怪的错误。我有一个只有两列的表(User和pass,都有文本类型)。 该程序首先询问我要修改的列。使用单选按钮,我指出要修改的列。

按任意单选按钮,会出现两个文本框。您必须输入密码和新数据才能对其进行修改。

问题在于,在进行修改时,如果我想更改用户列,一切都运行良好......但如果我想更改密码列的内容,请发布“更新错误子句”。

老实说,我在这段代码中没有看到任何错误:

Protected Friend Sub modificarAcesso(ByVal column As String, ByVal dato As String)
    Dim cmd As String = "Update Login SET " & column & "=@dato"
    Try
        con.Open()
        comando = New OleDbCommand(cmd, con)
        comando.Parameters.AddWithValue("@dato", dato)
        comando.ExecuteNonQuery()
        comando.Dispose()
        con.Close()
    Catch ex As Exception
        con.Close()
        MsgBox("Problemas en la consulta: " + ex.Message(), MsgBoxStyle.Critical)
    End Try
End Sub

1 个答案:

答案 0 :(得分:3)

密码是关键字,因此您必须将其放在括号中。如果列名中也有空格,你应该这样做:

Dim cmd As String = "Update Login SET [" & column & "] = @dato"