IDbDataAdapter.DeleteCommand 属性

定义

获取或设置用于从数据集中删除记录的 SQL 语句。

C#
public System.Data.IDbCommand? DeleteCommand { get; set; }
C#
public System.Data.IDbCommand DeleteCommand { get; set; }

属性值

IDbCommand 过程中使用的 Update(DataSet),它针对数据集中已删除的行删除数据源中的记录。

示例

以下示例创建继承 OleDbDataAdapter 类的实例,并设置 SelectCommandDeleteCommand 属性。 它假定你已创建对象 OleDbConnection

C#
public static OleDbDataAdapter CreateCustomerAdapter(
    OleDbConnection connection)
{
    OleDbDataAdapter dataAdapter = new OleDbDataAdapter();
    OleDbCommand command;
    OleDbParameter parameter;

    // Create the SelectCommand.
    command = new OleDbCommand("SELECT CustomerID FROM Customers " +
        "WHERE Country = ? AND City = ?", connection);

    command.Parameters.Add("Country", OleDbType.VarChar, 15);
    command.Parameters.Add("City", OleDbType.VarChar, 15);

    dataAdapter.SelectCommand = command;

    // Create the DeleteCommand.
    command = new OleDbCommand(
        "DELETE * FROM Customers WHERE CustomerID = ?",
        connection);

    parameter = command.Parameters.Add(
        "CustomerID", OleDbType.Char, 5, "CustomerID");
    parameter.SourceVersion = DataRowVersion.Original;

    dataAdapter.DeleteCommand = command;

    return dataAdapter;
}

注解

在 期间Update,如果未设置此属性并且中DataSet存在主键信息,DeleteCommand则可以在 设置SelectCommand.NET Framework数据提供程序的 属性时自动生成 。 然后,未设置的任何其他命令都由 CommandBuilder 生成。 此生成逻辑要求键列信息存在于 中 DataSet。 有关详细信息,请参阅 使用 CommandBuilders 生成命令

DeleteCommand 分配给之前创建的 IDbCommand时, IDbCommand 不会克隆 。 维护 DeleteCommand 对以前创建的 IDbCommand 对象的引用。

适用于

产品 版本
.NET Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9, 10
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 2.0, 2.1