OleDbDataAdapter.InsertCommand プロパティ

データ ソースに新しいレコードを挿入するための SQL ステートメントまたはストアド プロシージャを取得または設定します。

Public Shadows Property InsertCommand As OleDbCommand
[C#]
public new OleDbCommand InsertCommand {get; set;}
[C++]
public: __property OleDbCommand* get_InsertCommand();public: __property void set_InsertCommand(OleDbCommand*);
[JScript]
public hide function get InsertCommand() : OleDbCommand;public function set InsertCommand(OleDbCommand);

プロパティ値

Update 処理中に、 DataSet 内の新しい行に対応するデータ ソース内のレコードを挿入するための OleDbCommand

解説

Update 処理中に、このプロパティが設定されておらず、 DataSet に主キー情報が存在する場合、 SelectCommand プロパティを設定し、 OleDbCommandBuilder を使用しているときは、 InsertCommand が自動的に生成されます。続いて、設定していない追加のコマンドが、 OleDbCommandBuilder によって生成されます。この生成ロジックでは、 DataSet 内にキー列情報が存在している必要があります。詳細については、「 自動生成コマンド 」を参照してください。

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

メモ   このコマンドの実行によって行が返される場合、 OleDbCommand オブジェクトの UpdatedRowSource プロパティの設定によっては、返された行が DataSet に追加されることがあります。

使用例

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

 
Public Shared Function CreateCustomerAdapter(conn As OleDbConnection) As OleDbDataAdapter 
  
  Dim da As OleDbDataAdapter = New OleDbDataAdapter()
  Dim cmd As OleDbCommand

  ' Create the SelectCommand.

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

  cmd.Parameters.Add("@Country", OleDbType.VarChar, 15)
  cmd.Parameters.Add("@City", OleDbType.VarChar, 15)

  da.SelectCommand = cmd

  ' Create the InsertCommand.

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

  cmd.Parameters.Add("@CustomerID", OleDbType.Char, 5, "CustomerID")
  cmd.Parameters.Add("@CompanyName", OleDbType.VarChar, 40, "CompanyName")

  da.InsertCommand = cmd

  Return da
End Function

[C#] 
public static OleDbDataAdapter CreateCustomerAdapter(OleDbConnection conn)
{
  OleDbDataAdapter da = new OleDbDataAdapter();
  OleDbCommand cmd;

  // Create the SelectCommand.

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

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

  da.SelectCommand = cmd;

  // Create the InsertCommand.

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

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

  da.InsertCommand = cmd;

  return da;
}

[C++] 
public:
static OleDbDataAdapter* CreateCustomerAdapter(OleDbConnection* conn)
{
  OleDbDataAdapter* da = new OleDbDataAdapter();
  OleDbCommand* cmd;

  // Create the SelectCommand.

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

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

  da->SelectCommand = cmd;

  // Create the InsertCommand.

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

  cmd->Parameters->Add(S"@CustomerID", OleDbType::Char, 5, S"CustomerID");
  cmd->Parameters->Add(S"@CompanyName", OleDbType::VarChar, 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 ファミリ

参照

OleDbDataAdapter クラス | OleDbDataAdapter メンバ | System.Data.OleDb 名前空間 | DeleteCommand | SelectCommand | UpdateCommand