0

我收到此错误:

参数化查询“(@SupplierName nvarchar(50),@CostPrice nvarchar(50))UPDATE CostP”需要未提供的参数“@SupplierName”。

这里有什么问题?

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();
4

1 回答 1

2

我认为问题在于您如何设置值 - 我认为这是导致您的错误消息的原因。

尝试这个:

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

我在下面链接到的 MSDN 页面上有一个替代方案,这也可能有所帮助。

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

于 2012-08-03T10:44:36.220 回答