Skip to main content
 首页 » 编程设计

c#之如何在更新查询中将格式为 test@test1.com 的电子邮件地址传递给 Access DB

2024年01月31日32kuangbin

我正在尝试将 Access 数据库中的电子邮件列更新为“test@test1.com”。 但是我收到了这个错误/异常

System.Data.dll 中发生类型为“System.Data.OleDb.OleDbException”的未处理异常

附加信息:查询表达式“test@test1.com”中的语法错误(缺少运算符)。

我的代码如下。

  string em = "test@" + comId + ".com"; 
  string cmd = "UPDATE tblWebUsers SET Email ="+ em +" WHERE CustRole = 'SuperAdmin'"; 
  OleDbCommand cmdv3 = new OleDbCommand(cmd, con); 
  cmdv3.ExecuteNonQuery(); 

有什么帮助吗???

请您参考如下方法:

查询中的电子邮件地址不在引号之间,因此数据库服务器尝试将电子邮件地址解析为指令而不是字符串。

  string em = "test@" + comId + ".com"; 
  string cmd = "UPDATE tblWebUsers SET Email ='"+ em +"' WHERE CustRole = 'SuperAdmin'"; 
  OleDbCommand cmdv3 = new OleDbCommand(cmd, con); 
  cmdv3.ExecuteNonQuery();