Note

Access to this page requires authorization. You can try signing in or .

Access to this page requires authorization. You can try .

SqlDataAdapter.SelectCommand Property

Definition

Namespace:
Microsoft.Data.SqlClient
Assembly:
Microsoft.Data.SqlClient.dll
Package:
Microsoft.Data.SqlClient v1.0.19269.1
Package:
Microsoft.Data.SqlClient v1.1.4
Package:
Microsoft.Data.SqlClient v2.0.1
Package:
Microsoft.Data.SqlClient v2.1.4
Package:
Microsoft.Data.SqlClient v3.0.1
Package:
Microsoft.Data.SqlClient v3.1.0
Package:
Microsoft.Data.SqlClient v4.0.1
Package:
Microsoft.Data.SqlClient v4.1.0
Package:
Microsoft.Data.SqlClient v5.0.0
Package:
Microsoft.Data.SqlClient v5.1.0
Package:
Microsoft.Data.SqlClient v5.2.0
Package:
Microsoft.Data.SqlClient v6.0.2
Package:
Microsoft.Data.SqlClient v6.1.3
Package:
Microsoft.Data.SqlClient v7.0.1
Source:
SqlDataAdapter.cs
Source:
SqlDataAdapter.cs
Source:
SqlDataAdapter.cs

Important

Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.

Gets or sets a Transact-SQL statement or stored procedure used to select records in the data source.

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

Property Value

A SqlCommand used during Fill(DataSet) to select records from the database for placement in the DataSet.

Examples

The following example creates a SqlDataAdapter and sets the SelectCommand, InsertCommand, UpdateCommand, and DeleteCommand properties. It assumes you have already created a SqlConnection object.

using System;
using System.Data;
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;
 }
}

Remarks

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

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

Applies to