2015-06-14 68 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

相關問題