我遇到了一个非常奇怪的错误。我有一个只有两列的表(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
答案 0 :(得分:3)
密码是关键字,因此您必须将其放在括号中。如果列名中也有空格,你应该这样做:
Dim cmd As String = "Update Login SET [" & column & "] = @dato"