OleDbDataAdapter.UpdateCommand Property


The .NET API Reference documentation has a new home. Visit the .NET API Browser on docs.microsoft.com to see the new experience.

Gets or sets an SQL statement or stored procedure used to update records in the data source.

Namespace:   System.Data.OleDb
Assembly:  System.Data (in System.Data.dll)

public OleDbCommand UpdateCommand { get; set; }

Property Value

Type: System.Data.OleDb.OleDbCommand

An OleDbCommand used during Update to update records in the data source that correspond to modified rows in the DataSet.

During Update, if this property is not set and primary key information is present in the DataSet, the UpdateCommand 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 UpdateCommand is assigned to a previously created OleDbCommand, the OleDbCommand is not cloned. The UpdateCommand maintains a reference to the previously created OleDbCommand object.


If execution of this command returns rows, these rows may be merged with the DataSet depending on how you set the UpdatedRowSource property of the OleDbCommand object.

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

private static OleDbDataAdapter CreateCustomerAdapter(
    OleDbConnection connection)
    OleDbDataAdapter dataAdapter = new OleDbDataAdapter();
    OleDbCommand command;
    OleDbParameter parameter;

    // Create the SelectCommand.
    command = new OleDbCommand("SELECT * FROM dbo.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 UpdateCommand.
    command = new OleDbCommand(
        "UPDATE dbo.Customers SET CustomerID = ?, CompanyName = ? " +
        "WHERE CustomerID = ?", connection);

        "CustomerID", OleDbType.Char, 5, "CustomerID");
        "CompanyName", OleDbType.VarChar, 40, "CompanyName");

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

    dataAdapter.UpdateCommand = command;

    return dataAdapter;

.NET Framework
Available since 1.1
Return to top