簡體   English   中英

有沒有辦法使用 c# 和 MS Access 刪除表中的所有行?

[英]Is there a way to delete all the rows in a table using c# and MS Access?

我想編寫一個簡單的代碼行來刪除某個表中的所有數據行。 (使用 c# 和 MS Access 2010)該表包含大約 1000 行、10 列,並且它變得有點慢。

這段代碼完成了這項工作:

  connStr = @"Provider=Microsoft.ACE.OLEDB.12.0;Data Source=E:\Words\shinunonDB.accdb;Persist Security Info=False;";

  OleDbConnection Conn = new OleDbConnection();
  Conn.ConnectionString = connStr;
  sql = "select * from Heb";
  Conn.Open();
  OleDbDataAdapter da = new OleDbDataAdapter(sql, Conn);
  DataSet ds = new DataSet();
  OleDbCommandBuilder cb = new OleDbCommandBuilder(da);

  da.Fill(ds, "Heb");
  foreach (DataRow dRow in ds.Tables["heb"].Rows)
  {
      dRow.Delete();
  }
  da.Update(ds, "heb");

但我想可能有一種更短、更有效的方法來做到這一點。

感謝大伙們。

就在這里。 只需使用 SQL 命令:

delete from Heb;

您可以在 OleDbConnection 上發出 SQL 命令。 像這樣的東西:

OleDbCommand ac = new OleDbCommand("delete from Heb",Conn);
ac.ExecuteNonQuery();

對我來說,它使用以下幾行:

OleDbCommand ac = new OleDbCommand("delete from Heb",Conn);
ac.ExecuteNonQuery();

但它從表中刪除了我的所有數據,而不僅僅是一行。

當我這樣做時

conn.Open();
OleDbCommand cmd = new OleDbCommand("delete from Kunden where id=" + txtKdnID.Text + " ", conn);
cmd.ExecuteNonQuery();
conn.Close();
MessageBox.Show("Eintrag erfolgreich gelöscht");

我收到此錯誤

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM