次の方法で共有


SqlDataAdapter.SelectCommand プロパティ

データ ソース内のレコードを選択するための Transact-SQL ステートメントまたはストアド プロシージャを取得または設定します。

Public Shadows Property SelectCommand As SqlCommand
[C#]
public new SqlCommand SelectCommand {get; set;}
[C++]
public: __property SqlCommand* get_SelectCommand();public: __property void set_SelectCommand(SqlCommand*);
[JScript]
public hide function get SelectCommand() : SqlCommand;public function set SelectCommand(SqlCommand);

プロパティ値

Fill 処理中に、 DataSet に格納するレコードをデータベースから選択するための SqlCommand

解説

作成済みの SqlCommandSelectCommand が割り当てられた場合、 SqlCommand のクローンは作成されません。 SelectCommand によって、作成済みの SqlCommand オブジェクトへの参照が維持されます。

SelectCommand が行を返さなかった場合は、 DataSet にテーブルは追加されず、例外は生成されません。

使用例

[Visual Basic, C#, C++] SqlDataAdapter を作成して SelectCommand プロパティと InsertCommand プロパティを設定する例を次に示します。ここでは、 SqlConnection オブジェクトが既に作成されていることを前提にしています。

 
Public Shared Function CreateCustomerAdapter(conn As SqlConnection) As SqlDataAdapter 
  
  Dim da As SqlDataAdapter = New SqlDataAdapter()
  Dim cmd As SqlCommand

  ' Create the SelectCommand.

  cmd = New SqlCommand("SELECT * FROM Customers " & _
                       "WHERE Country = @Country AND City = @City", conn)

  cmd.Parameters.Add("@Country", SqlDbType.NVarChar, 15)
  cmd.Parameters.Add("@City", SqlDbType.NVarChar, 15)

  da.SelectCommand = cmd

  ' Create the InsertCommand.

  cmd = New SqlCommand("INSERT INTO Customers (CustomerID, CompanyName) " & _
                       "VALUES (@CustomerID, @CompanyName)", conn)

  cmd.Parameters.Add("@CustomerID", SqlDbType.NChar, 5, "CustomerID")
  cmd.Parameters.Add("@CompanyName", SqlDbType.NVarChar, 40, "CompanyName")

  da.InsertCommand = cmd

  Return da
End Function

[C#] 
public static SqlDataAdapter CreateCustomerAdapter(SqlConnection conn)
{
  SqlDataAdapter da = new SqlDataAdapter();
  SqlCommand cmd;

  // Create the SelectCommand.

  cmd = new SqlCommand("SELECT * FROM Customers " +
                       "WHERE Country = @Country AND City = @City", conn);

  cmd.Parameters.Add("@Country", SqlDbType.NVarChar, 15);
  cmd.Parameters.Add("@City", SqlDbType.NVarChar, 15);

  da.SelectCommand = cmd;

  // Create the InsertCommand.

  cmd = new SqlCommand("INSERT INTO Customers (CustomerID, CompanyName) " +
                       "VALUES (@CustomerID, @CompanyName)", conn);

  cmd.Parameters.Add("@CustomerID", SqlDbType.NChar, 5, "CustomerID");
  cmd.Parameters.Add("@CompanyName", SqlDbType.NVarChar, 40, "CompanyName");

  da.InsertCommand = cmd;

  return da;
}

[C++] 
public:
static SqlDataAdapter* CreateCustomerAdapter(SqlConnection* conn)
{
  SqlDataAdapter* da = new SqlDataAdapter();
  SqlCommand* cmd;

  // Create the SelectCommand.

  cmd = new SqlCommand(S"SELECT * FROM Customers " 
                       S"WHERE Country = @Country AND City = @City", conn);

  cmd->Parameters->Add(S"@Country", SqlDbType::NVarChar, 15);
  cmd->Parameters->Add(S"@City", SqlDbType::NVarChar, 15);

  da->SelectCommand = cmd;

  // Create the InsertCommand.

  cmd = new SqlCommand(S"INSERT INTO Customers (CustomerID, CompanyName) " 
                       S"VALUES (@CustomerID, @CompanyName)", conn);

  cmd->Parameters->Add(S"@CustomerID", SqlDbType::NChar, 5, S"CustomerID");
  cmd->Parameters->Add(S"@CompanyName", SqlDbType::NVarChar, 40, S"CompanyName");

  da->InsertCommand = cmd;

  return da;
}

[JScript] JScript のサンプルはありません。Visual Basic、C#、および C++ のサンプルを表示するには、このページの左上隅にある言語のフィルタ ボタン 言語のフィルタ をクリックします。

必要条件

プラットフォーム: Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 ファミリ, .NET Compact Framework - Windows CE .NET

参照

SqlDataAdapter クラス | SqlDataAdapter メンバ | System.Data.SqlClient 名前空間 | DeleteCommand | InsertCommand | UpdateCommand