Edit

Share via


OleDbDataAdapter.DeleteCommand Property

Definition

Gets or sets an SQL statement or stored procedure for deleting records from the data set.

public:
 property System::Data::OleDb::OleDbCommand ^ DeleteCommand { System::Data::OleDb::OleDbCommand ^ get(); void set(System::Data::OleDb::OleDbCommand ^ value); };
public System.Data.OleDb.OleDbCommand? DeleteCommand { get; set; }
[System.Data.DataSysDescription("DbDataAdapter_DeleteCommand")]
public System.Data.OleDb.OleDbCommand DeleteCommand { get; set; }
public System.Data.OleDb.OleDbCommand DeleteCommand { get; set; }
member this.DeleteCommand : System.Data.OleDb.OleDbCommand with get, set
[<System.Data.DataSysDescription("DbDataAdapter_DeleteCommand")>]
member this.DeleteCommand : System.Data.OleDb.OleDbCommand with get, set
Public Property DeleteCommand As OleDbCommand

Property Value

An OleDbCommand used during Update(DataSet) to delete records in the data source that correspond to deleted rows in the DataSet.

Attributes

Examples

The following example creates an OleDbDataAdapter and sets the SelectCommand and DeleteCommand properties. It assumes that you have already created an OleDbConnection object.

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;
}
Public Shared Function CreateCustomerAdapter( _
    connection As OleDbConnection) As OleDbDataAdapter 

    Dim dataAdapter As New OleDbDataAdapter()
    Dim command As OleDbCommand
    Dim parameter As OleDbParameter

    ' 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
End Function

Remarks

During Update, if this property is not set and primary key information is present in the DataSet, the DeleteCommand can be generated automatically if you set the SelectCommand property and use the OleDbCommandBuilder. Then, any additional commands that you do not set are generated by the OleDbCommandBuilder. This generation logic requires key column information to be present in the DataSet. For more information, see Generating Commands with CommandBuilders.

When DeleteCommand is assigned to a previously created OleDbCommand, the OleDbCommand is not cloned. The DeleteCommand maintains a reference to the previously created OleDbCommand object.

Applies to

See also