UpdateCommand Property

IDbDataAdapter.UpdateCommand Property


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

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

IDbCommand UpdateCommand { get; set; }

Property Value

Type: System.Data.IDbCommand

An IDbCommand used during Update to update records in the data source for modified rows in the data set.

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 of a .NET Framework data provider. Then, any additional commands that you do not set are generated by the CommandBuilder. 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 IDbCommand, the IDbCommand is not cloned. The UpdateCommand maintains a reference to the previously created IDbCommand object.


If execution of this command returns rows, these rows are added to the DataSet.

The following example creates an instance of the inherited OleDbDataAdapter class, and sets the SelectCommand and UpdateCommand properties. It assumes 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
© 2015 Microsoft