无法通过 C# 中的 OleDB 从 Microsoft Access 中删除 table 的所有行

Couldn't delete all rows of a table from Microsoft Access via OleDB in C#

我有一个方法可以删除 table 中的所有数据。然而,即使被调用,删除也根本没有发生。

下面是方法。 假设数据已经加载到 table 中。 Table "CartListClone" 有 5 列(不包括 ID)。您在连接字符串中看到的 table 派生自 Access。

public void deleteEverything() {
        OleDbConnection connect =
            new OleDbConnection(@"Provider=Microsoft.ACE.OLEDB.12.0; 
                Data Source=POSDB.accdb; 
                Persist Security Info = False");
        connect.Open();

        OleDbCommand command = new OleDbCommand();
        command.Connection = connect;
        command.CommandText = "DELETE * FROM CartListClone";

    }

到目前为止,我觉得问题的根源在于方法。 我在这里做错了什么吗? 非常感谢您的帮助。

更新:根据 sstan 的建议,下面是重写的方法。

public void deleteEverything() {
        OleDbConnection connect =
            new OleDbConnection(@"Provider=Microsoft.ACE.OLEDB.12.0; 
                Data Source=POSDB.accdb; 
                Persist Security Info = False");
        connect.Open();

        OleDbCommand command = new OleDbCommand("DELETE * FROM CartListClone");
        command.Connection = connect;
        command.ExecuteNonQuery();
    }

您永远不会执行 command 对象。你在最后错过了这一行:

command.ExecuteNonQuery();