看到这个问题,首先检查sql语句是否缺少 “ ‘ ”号,,如何sql语句没有错误,就检查得到的数据中是否有单引号(“ ‘ ”)、双引号(“ “ ”)等

如何得到的数据有单双引号,就用 sql连接法对数据进行操作。sql连接法符号是  “ @ ”。

例如

 1 string sql = "update users set " + "userroleid=@userroleid," + "userstateid=@userstateid," + "loginid=@loginid," + "loginpwd=@loginpwd," + "name=@name," + "address=@address," + "phone=@phone," + "mail=@mail " +" where id=@id";
 2             sqlparameter[] para = new sqlparameter[]
 3             {
 4                 new sqlparameter("@id",us.id),
 5                 new sqlparameter("@loginid",us.loginid),
 6                 new sqlparameter("@loginpwd",us.loginpwd),
 7                 new sqlparameter("@name",us.name),
 8                 new sqlparameter("@address",us.address),
 9                 new sqlparameter("@phone",us.phone),
10                 new sqlparameter("@mail",us.mail),
11                 new sqlparameter("@userstateid",us.userstates.id), //fk
12                 new sqlparameter("@userroleid",us.userroles.id) //fk
13              };
14             dbhelper.executecommand(sql, para);

即可。