2012-08-03 178 views
0

我得到這個錯誤:更新數據庫

The parameterized query '(@SupplierName nvarchar(50),@CostPrice nvarchar(50))UPDATE CostP' expects the parameter '@SupplierName', which was not supplied.

有什麼問題嗎?

con = new System.Data.SqlClient.SqlConnection(); 
con.ConnectionString = "Data Source=tcp:SHEN-PC,49172\\SQLEXPRESS;Initial Catalog=LSEStock;Integrated Security=True"; 
con.Open(); 

String updateData = "UPDATE CostPrice SET SupplierName = @SupplierName, CostPrice = @CostPrice WHERE PartsID = '" +textBox1.Text+"'"; 
SqlCommand update = new SqlCommand(updateData, con); 

update.Parameters.Add("@SupplierName", SqlDbType.NVarChar, 50, "SupplierName"); 
update.Parameters.Add("@CostPrice", SqlDbType.NVarChar, 50, "CostPrice"); 

update.ExecuteNonQuery(); 
+0

你好!將你的問題分解成更相關的代碼和明顯的問題。就目前而言,它的格式不是很好,它有點長,坦率地說 - 在代碼之後,你最後提出了問題。 =) – 2012-08-03 08:28:23

+0

對不起,但我真的需要幫助,我無法解決這個問題。 – 2012-08-03 08:34:37

回答

2

我認爲這個問題是你如何設置值 - 這就是我認爲是造成你的錯誤消息。

試試這個:

update.Parameters.Add("@SupplierName", SqlDbType.NVarChar, 50).Value = "SupplierName"; 

有這種替代的MSDN頁面鏈接我以下,這也可能有助於。

MSDN鏈接:http://msdn.microsoft.com/en-us/library/e5xwx8sc(v=vs.80).aspx