使用 Access 2010 和 c# Windows 应用程序的 UPDATE 语句中的语法错误
本文关键字:UPDATE 语句 语法 错误 应用程序 2010 Access Windows 使用 | 更新日期: 2023-09-27 18:33:55
>我正在使用MS Access 2010,并尝试使用C# Windows应用程序连接它,并使用此代码更新数据,
com.CommandText = "UPDATE Admin SET UserName = @UN, Password = @Pass, ValidID = @VID WHERE ID = @ID";
com.Parameters.AddWithValue("@UN", TBUserName.Text);
com.Parameters.AddWithValue("@Pass", TBPassword.Text);
com.Parameters.AddWithValue("@VID", CBvalidation.SelectedValue);
com.Parameters.AddWithValue("@ID", CBEmpName.SelectedValue);
ds.Tables.Add("Admin");
da.Fill(ds, "Admin");
在运行时出现的错误是
"更新语句中的语法错误">
所以你能告诉我错误在哪里吗?
PASSWORD 是 Access JET/SQL 中的保留关键字。
您需要用方括号封装它
com.CommandText = "UPDATE Admin SET UserName = @UN, " +
"[Password] = @Pass, ValidID = @VID WHERE ID = @ID";
如果可能,我建议您更改此字段的名称。
对于此表上的每个将来的查询,您始终会遇到此问题。
试试这个
com.CommandText =
"UPDATE Admin SET UserName = @UN, [Password] = @Pass, ValidID = @VID WHERE ID = @ID";
您不能使用Password
,因为它是保留的,而是[Password]
PASSWORD
是Access 上的保留关键字。
将其与方括号一起使用,例如[PASSWORD]
com.CommandText = "UPDATE Admin SET UserName = @UN, [Password] = @Pass, ValidID = @VID WHERE ID = @ID";
作为一般建议,不要对数据库中的标识符和对象名称使用保留关键字。