SqlDataAdapter.SelectCommand Proprietà

Definizione

Ottiene o imposta un'istruzione Transact-SQL o una stored procedure per selezionare record nell'origine dati.

public:
 property Microsoft::Data::SqlClient::SqlCommand ^ SelectCommand { Microsoft::Data::SqlClient::SqlCommand ^ get(); void set(Microsoft::Data::SqlClient::SqlCommand ^ value); };
public Microsoft.Data.SqlClient.SqlCommand SelectCommand { get; set; }
member this.SelectCommand : Microsoft.Data.SqlClient.SqlCommand with get, set
Public Property SelectCommand As SqlCommand

Valore della proprietà

Oggetto SqlCommand utilizzato durante l'applicazione del metodo Fill(DataSet) per selezionare record nel database da collocare nell'oggetto DataSet.

Esempio

Nell'esempio seguente viene creato un SqlDataAdapter oggetto e vengono impostate le SelectCommandproprietà , InsertCommand, UpdateCommande DeleteCommand . Si presuppone che sia già stato creato un SqlConnection oggetto.

using Microsoft.Data.SqlClient;

class Program
{
    static void Main()
    {
    }
    public static SqlDataAdapter CreateCustomerAdapter(
        SqlConnection connection)
    {
        SqlDataAdapter adapter = new SqlDataAdapter();

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

        // Add the parameters for the SelectCommand.
        command.Parameters.Add("@Country", SqlDbType.NVarChar, 15);
        command.Parameters.Add("@City", SqlDbType.NVarChar, 15);

        adapter.SelectCommand = command;

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

        // Add the parameters for the InsertCommand.
        command.Parameters.Add("@CustomerID", SqlDbType.NChar, 5, "CustomerID");
        command.Parameters.Add("@CompanyName", SqlDbType.NVarChar, 40, "CompanyName");

        adapter.InsertCommand = command;

        // Create the UpdateCommand.
        command = new SqlCommand(
            "UPDATE Customers SET CustomerID = @CustomerID, CompanyName = @CompanyName " +
            "WHERE CustomerID = @oldCustomerID", connection);

        // Add the parameters for the UpdateCommand.
        command.Parameters.Add("@CustomerID", SqlDbType.NChar, 5, "CustomerID");
        command.Parameters.Add("@CompanyName", SqlDbType.NVarChar, 40, "CompanyName");
        SqlParameter parameter = command.Parameters.Add(
            "@oldCustomerID", SqlDbType.NChar, 5, "CustomerID");
        parameter.SourceVersion = DataRowVersion.Original;

        adapter.UpdateCommand = command;

        // Create the DeleteCommand.
        command = new SqlCommand(
            "DELETE FROM Customers WHERE CustomerID = @CustomerID", connection);

        // Add the parameters for the DeleteCommand.
        parameter = command.Parameters.Add(
            "@CustomerID", SqlDbType.NChar, 5, "CustomerID");
        parameter.SourceVersion = DataRowVersion.Original;

        adapter.DeleteCommand = command;

        return adapter;
    }
}

Commenti

Quando SelectCommand viene assegnato a un oggetto creato SqlCommandin precedenza, l'oggetto SqlCommand non viene clonato. Mantiene SelectCommand un riferimento all'oggetto creato SqlCommand in precedenza.

Se non restituisce righe, non vengono aggiunte tabelle all'oggetto SelectCommandDataSete non viene generata alcuna eccezione.

Si applica a