private void button5_Click(object sender, EventArgs e)
{
cn.Open();
SqlCommand cmd = new SqlCommand("DELETE FROM data WHERE item ='" + listBox1.SelectedItem + "'", cn);
cmd.ExecuteNonQuery();
cn.Close();
}
当我运行程序并单击“删除”按钮时,它正在工作。但是在运行时,如果我向数据库中输入了一些数据并尝试将其删除,则出现此错误
答案 0 :(得分:1)
由于您的代码无法直接识别问题,因此我必须作一个假设。 我相信您通话中的某个位置之前的连接尚未关闭,因此无法再次打开。
我强烈建议您使用using语句替换sql请求,以确保有效关闭所有连接,并在完成后处置连接。
如果在整个应用程序中都执行此操作,则不会发生此类错误。
using (SqlConnection cn = new SqlConnection(connectionString))
{
using (SqlCommand cmd = new SqlCommand("DELETE FROM data WHERE item ='" + listBox1.SelectedItem + "'", cn);
{
cn.Open();
cmd.ExecuteNonQuery();
}
}