1

我有一张桌子,我想删除所有带有特定卡序列的行。有多行具有相同的卡序列。所以我写了这段代码,但似乎不起作用:

try
{
using (SqlConnection con = new SqlConnection(WF_AbsPres.Properties.Settings.Default.DbConnectionString))
{
   con.Open();
   SqlCommand command2 = new SqlCommand("DELETE  FORM DevInOut where Cardserial='" + textBox5.Text + "'", con);
   command2.ExecuteNonQuery();
   con.Close();
}
}
   catch (SqlException ex)
{
}

如何保证所有行都将被删除。我应该使用程序吗?如何使用程序?

4

1 回答 1

4

将您的更改FORMFROM.

请始终使用参数化查询。这种字符串连接对SQL 注入攻击是开放的。

using (SqlConnection con = new SqlConnection(WF_AbsPres.Properties.Settings.Default.DbConnectionString))
{
   con.Open();
   SqlCommand command2 = new SqlCommand("DELETE FROM DevInOut where Cardserial=@Cardserial", con);
   commdand2.Parameters.AddWithValue("@Cardserial", textBox5.Text);
   command2.ExecuteNonQuery();
   con.Close();
}

阅读更多来自DELETE (Transact-SQL)

于 2013-09-28T09:48:30.673 回答