此SQL更新语句中的错误是什么

时间:2013-09-26 05:20:50

标签: sql sql-server c#-4.0 qsqlquery

我有更新数据库表的方法 但是当我调用它时,我有一个例外“'附近的语法不正确'('。”

这是方法

 internal Boolean update(int customerID,int followingID, string fullName, string idNumber, string address, string tel, string mobile1, string mobile2, string email, string customerComment, DateTime timeStamp)
     {
         string sqlStatment = "update customers set (followingID, fullName,idNumber,address,tel,mobile1,mobile2,email,customerComment,timeStamp) = (@followingID, @fullName,@idNumber,@address,@tel,@mobile1,@mobile2,@email,@customerComment,@timeStamp) where customerID=@customerID";

         SqlConnection con = new SqlConnection();
         con.ConnectionString = connection;
         SqlCommand cmd = new SqlCommand(sqlStatment, con);

         cmd.Parameters.AddWithValue("@customerID", customerID);
         cmd.Parameters.AddWithValue("@followingID", followingID);
         cmd.Parameters.AddWithValue("@fullName", fullName);
         cmd.Parameters.AddWithValue("@idNumber", idNumber);
         cmd.Parameters.AddWithValue("@address", address);
         cmd.Parameters.AddWithValue("@tel", tel);
         cmd.Parameters.AddWithValue("@mobile1", mobile1);
         cmd.Parameters.AddWithValue("@mobile2", mobile2);
         cmd.Parameters.AddWithValue("@email", email);
         cmd.Parameters.AddWithValue("@customerComment", customerComment);
         cmd.Parameters.AddWithValue("@timeStamp", timeStamp);


         bool success = false;
         try
         {

             con.Open();
             cmd.ExecuteNonQuery();
             success = true;

         }
         catch (Exception ex)
         {

             success = false;
             //throw ex;
         }
         finally
         {
             con.Close();
         }
         return success;
     }

这里是数据库表列

Customers table

6 个答案:

答案 0 :(得分:5)

您的语法错误不正确。请参阅 Update Query Syntax

的链接
update customers 
set 
followingID= @followingID, 
fullName=@fullName,
idNumber=@idNumber,
address=@address,
tel=@tel,
mobile1=@mobile1,
mobile2=@mobile2,
email=@email,
customerComment=@customerComment,
timeStamp=@timeStamp
where customerID=@customerID

答案 1 :(得分:5)

您的sql update声明错误。有关更新语句see

的更多信息
     string sqlStatment = "update customers set followingID=@followingID,
          fullName=@fullName,idNumber=@idNumber,address=@address,tel=@tel,
          mobile1=@mobile1,mobile2=@mobile2,email=@email,
          customerComment=@customerComment,timeStamp=@timeStamp
        where customerID=@customerID";

答案 2 :(得分:2)

请参阅更新语句语法:

http://www.w3schools.com/sql/sql_update.asp

您无法批量更新表格中的值

答案 3 :(得分:2)

UPDATE语法错误..

尝试

string sqlStatment = "UPDATE customers SET followingID= @followingID, fullName=@fullName, idNumber=@idNumber,address=@address,tel=@tel,mobile1=@mobile1,mobile2=@mobile2,email=@email,customerComment=@customerComment,timeStamp=@timeStamp WHERE customerID=@customerID"

答案 4 :(得分:1)

从未见过像这样的更新声明 - 通常是set followingid = @followingid, fullname = @fullname等等

答案 5 :(得分:0)

存在语法错误,更新语句就像这样使用

update customers set followingID=@followingID,
fullName=@fullName,
idNumber=@idNumber,
address=@address,
tel=@tel,
mobile1=@mobile1,
mobile2=@mobile2,
email=@email,
customerComment=@customerComment,
timeStamp=@timeStamp
where customerID=@customerID