从datagridview的更改更新数据库

时间:2012-08-03 08:23:31

标签: c# database datagridview

我收到此错误:

  

参数化查询'(@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();

1 个答案:

答案 0 :(得分:2)

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

试试这个:

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

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

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