IDbDataAdapter.SelectCommand Property

Definition

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

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

Property Value

An IDbCommand that is used during Update(DataSet) to select records from data source for placement in the data set.

Examples

The following example creates an instance of the inherited OleDbDataAdapter class, and sets the SelectCommand and InsertCommand properties. It assumes you have already created an OleDbConnection object.

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

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

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

    adapter.SelectCommand = command;

    // Create the InsertCommand.
    command = new OleDbCommand(
        "INSERT INTO Customers (CustomerID, CompanyName) " +
        "VALUES (?, ?)", connection);

    command.Parameters.Add(
        "CustomerID", OleDbType.Char, 5, "CustomerID");
    command.Parameters.Add(
        "CompanyName", OleDbType.VarChar, 40, "CompanyName");

    adapter.InsertCommand = command;
    return adapter;
}

Remarks

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

If the SelectCommand does not return any rows, no tables are added to the DataSet, and no exception is raised.

Applies to

Product Versions
.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