次の方法で共有


OleDbDataAdapter.DeleteCommand プロパティ

データ セットからレコードを削除するための SQL ステートメントまたはストアド プロシージャを取得または設定します。

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

プロパティ値

Update 処理中に、 DataSet 内の削除行に対応するデータ ソース内のレコードを削除するための OleDbCommand

解説

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

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

使用例

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

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

  ' 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 DeleteCommand.

  cmd = New OleDbCommand("DELETE FROM Customers WHERE CustomerID = @CustomerID", conn)

  parm = cmd.Parameters.Add("@CustomerID", OleDbType.Char, 5, "CustomerID")
  parm.SourceVersion = DataRowVersion.Original

  da.DeleteCommand = cmd

  Return da
End Function

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

  // 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 DeleteCommand.

  cmd = new OleDbCommand("DELETE FROM Customers WHERE CustomerID = @CustomerID", conn);

  parm = cmd.Parameters.Add("@CustomerID", OleDbType.Char, 5, "CustomerID");
  parm.SourceVersion = DataRowVersion.Original;

  da.DeleteCommand = cmd;

  return da;
}

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

  // 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 DeleteCommand.

  cmd = new OleDbCommand(S"DELETE FROM Customers WHERE CustomerID = @CustomerID", conn);

  parm = cmd->Parameters->Add(S"@CustomerID", OleDbType::Char, 5, S"CustomerID");
  parm->SourceVersion = DataRowVersion::Original;

  da->DeleteCommand = 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 名前空間 | InsertCommand | SelectCommand | UpdateCommand