如何通过datagridview实现一次删除数据库中的多行

问题描述 投票:0回答:1

我有一个带有连接数据库的 C# 应用程序。数据存储在 datagridview 中。如何实现从 datagridview 中删除多个选定的行,并相应地从数据库中删除。

这是我尝试过的,但在此代码中,最后选定的行被删除:

private void button2_Click(object sender, EventArgs e) {
  String cell = dataGridviewl.SelectedRows[0].Cells[0].value.ToString();
  FbCommand cmd = new FbCommand();
  foreach(DataGridViewRow item in this.dataGridView1.SelectedRows) {
    cmd = new FbCommand("delete from " + nameTable + " where id=" + cell, connection);
  }
  cmd.ExecuteNonQuery();
  Update();
}
}

c# database datagridview
1个回答
0
投票

您只执行了一个 FbCommand 实例 - 最后一个,您应该执行其中之一

  1. 将多个FbCommand实例添加到集合中,然后循环执行所有实例
  2. 创建每个 FbCommand 时执行它
  3. 使用“id IN (id1,...idN)”构建查询,然后在循环之外创建 FbCommand,并且仅执行一次。
© www.soinside.com 2019 - 2024. All rights reserved.