This documentation is archived and is not being maintained.

OdbcDataAdapter.InsertCommand Property

Gets or sets an SQL statement or stored procedure used to insert new records into the data source.

Namespace: System.Data.Odbc
Assembly: System.Data (in

public OdbcCommand InsertCommand { get; set; 
/** @property */
public OdbcCommand get_InsertCommand ()

/** @property */
public void set_InsertCommand (OdbcCommand value)

public function get InsertCommand () : OdbcCommand

public function set InsertCommand (value : OdbcCommand)

Property Value

An OdbcCommand used during an update operation to insert records in the data source that correspond to new rows in the DataSet.

When the InsertCommand property is assigned to a previously created OdbcCommand object, the OdbcCommand is not cloned. Instead, InsertCommand maintains a reference to the previously created OdbcCommand.

During an update operation, if InsertCommand is not set and primary key information is present in the DataSet, you can use the OdbcCommandBuilder class to automatically generate InsertCommand, and additional commands needed to reconcile the DataSet to the data source. To do this, set the SelectCommand property of the OdbcDataAdapter. The generation logic also requires key column information to be present in the DataSet. For more information, see Automatically Generating Commands.


If execution of this command returns rows, these rows may be added to the DataSet depending upon how you set the .Data.Odbc.OdbcCommand.UpdatedRowSource property of the OdbcCommand object.

The following example creates an OdbcDataAdapter and sets the SelectCommand and InsertCommand properties. It assumes that you have already created an OdbcConnection object.

public static OdbcDataAdapter CreateDataAdapter(
    OdbcConnection connection)
    string selectCommand =
        "SELECT CustomerID, CompanyName FROM Customers";

    OdbcDataAdapter adapter = new OdbcDataAdapter(
        selectCommand, connection);
    adapter.MissingSchemaAction = MissingSchemaAction.AddWithKey;

    // Create the Insert, Update and Delete commands.
    adapter.InsertCommand = new OdbcCommand(
        "INSERT INTO Customers (CustomerID, CompanyName) " +
        "VALUES (?, ?)");

    adapter.UpdateCommand = new OdbcCommand(
        "UPDATE Customers SET CustomerID = ?, CompanyName = ? " +
        "WHERE CustomerID = ?");

    adapter.DeleteCommand = new OdbcCommand(
        "DELETE FROM Customers WHERE CustomerID = ?");

    // Create the parameters.
        OdbcType.Char, 5, "CustomerID");
        OdbcType.VarChar, 40, "CompanyName");

        OdbcType.Char, 5, "CustomerID");
        OdbcType.VarChar, 40, "CompanyName");
        OdbcType.Char, 5, "CustomerID").SourceVersion =

        OdbcType.Char, 5, "CustomerID").SourceVersion =

    return adapter;

Windows 98, Windows 2000 SP4, Windows Millennium Edition, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

The .NET Framework does not support all versions of every platform. For a list of the supported versions, see System Requirements.

.NET Framework

Supported in: 2.0, 1.1