我只想按 ID 更新表中的一列。
我没有任何错误,但这不起作用,它不会更新。我有 ID 列和另外 7 个列。
SqlCommand cmd1 = new SqlCommand("update table set amount=@kol where ID=@id" , con);
cmd1.Parameters.AddWithValue("@id", textbox1.Text);
cmd1.Parameters.AddWithValue("@kol", textbox2.Text );
你能检查一下你是否已经提交了你的工作,如果没有例外,那就是原因
如果不放 setautocommit(true) - java 版本
你可以在 c# 中找到它
请检查表名是否正确以及您正在验证的表是否正确
请给出一些其他表名而不是表名以获得良好实践
您的表是名为“table”还是仅用于此处的示例?
因为否则您需要将“表格”更改为您要更新的任何表格。或者如果它实际上被称为“表”,则用 [] 将其包围
只要您有 con.Open 和 ExecuteNonQuery 并拥有正确的用户名/密码和连接字符串,您的代码就可以工作。
这将在您更改连接字符串后起作用,如果不是问题是 sql server。
private void UpdateTable()
{
SqlConnection con = new SqlConnection("Data Source=.;Initial Catalog=YourDataBase;Persist Security Info=True;User ID=username;Password=pass");
SqlCommand cmd1 = new SqlCommand("update YourTable set amount=@kol where ID=@id", con);
cmd1.Parameters.AddWithValue("@id", textBox1.Text);
cmd1.Parameters.AddWithValue("@kol", textBox2.Text);
con.Open();
cmd1.ExecuteNonQuery();
}