2015-06-14 38 views
-1

我已经编写了一个C#代码来更新某个SQL Server表的某个列。表格名称是“finalfee”。当我试图执行代码时,它显示语法错误。为什么会发生?尝试更新某个表的某个列时出现语法错误

SqlConnection con23 = new SqlConnection(ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString); 
        con23.Open();  
SqlCommand cmd10 = new SqlCommand("update finalfee SET amountpaid='" + t26 + "',discountamount='" + t30 + "',grandamount='" + t27 + "',balanceamount='"+t28+"' where admno='"+TextBox56.Text+"')", con23); 
         cmd10.ExecuteNonQuery(); 

回答

0

删除您的命令中的最后一个')'。

SqlCommand cmd10 = new SqlCommand("update finalfee SET amountpaid='" + t26 + "',discountamount='" + t30 + "',grandamount='" + t27 + "',balanceamount='"+t28+"' where admno='"+TextBox56.Text+"'", con23); 

您应该使用参数。

编辑:

删除 ')' 这里:admno = ' “+ TextBox56.Text +”'

+0

哪一个我必须删除我没有得到你 –

+0

是的完成谢谢你 –

+0

没问题。考虑使用参数来防止Sql注入。 – mxix

0
SqlConnection con23 = new SqlConnection(ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString); 
        con23.Open();  
SqlCommand cmd10 = new SqlCommand("update finalfee SET amountpaid='" + t26 + "',discountamount='" + t30 + "',grandamount='" + t27 + "',balanceamount='"+t28+"' where admno='"+TextBox56.Text+"'", con23); 
         cmd10.ExecuteNonQuery(); 
0

有不打开一个右括号+” “)”

通过连接字符串可以产生很多问题创建一个命令。考虑使用命令参数。

SQLCommand Parameters

相关问题