次の方法で共有


IDbDataAdapter.InsertCommand プロパティ

定義

データ ソースに新しいレコードを挿入する SQL ステートメントを取得または設定します。

public:
 property System::Data::IDbCommand ^ InsertCommand { System::Data::IDbCommand ^ get(); void set(System::Data::IDbCommand ^ value); };
public System.Data.IDbCommand? InsertCommand { get; set; }
public System.Data.IDbCommand InsertCommand { get; set; }
member this.InsertCommand : System.Data.IDbCommand with get, set
Public Property InsertCommand As IDbCommand

プロパティ値

データ セット内の新しい行に対応するデータ ソース内のレコードを挿入するために、IDbCommand 中に使用する Update(DataSet)

次の例では、継承されたOleDbDataAdapterクラスのインスタンスを作成し、 プロパティと InsertCommand プロパティをSelectCommand設定します。 オブジェクトが既に作成 OleDbConnection されていることを前提としています。

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

    // Create the SelectCommand.
    command = new OleDbCommand("SELECT CustomerID 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;
}
Public Shared Function CreateCustomerAdapter( _
    connection As OleDbConnection) As OleDbDataAdapter 
  
    Dim adapter As New OleDbDataAdapter()
    Dim command As OleDbCommand

    ' Create the SelectCommand.
    command = New OleDbCommand("SELECT CustomerID 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
End Function

注釈

の間にUpdate、このプロパティが設定されておらず、主キー情報が にDataSetInsertCommand存在する場合、.NET Framework データ プロバイダーの プロパティを設定SelectCommandすると、 が自動的に生成されます。 その後、設定しない追加のコマンドは CommandBuilder によって生成されます。 この生成ロジックでは、 にキー列情報が存在 DataSetする必要があります。 詳細については、「 CommandBuilders を使用したコマンドの生成」を参照してください。

が以前に作成IDbCommandされた に割り当てられている場合InsertCommandIDbCommand は複製されません。 は InsertCommand 、以前に作成 IDbCommand した オブジェクトへの参照を保持します。

注意

このコマンドを実行すると行が返される場合、オブジェクトの プロパティを設定するDataSet方法に応じて、これらの行が にUpdatedRowSourceIDbCommand追加される場合があります。

適用対象