OleDbCommandBuilder イベント
OleDbCommandBuilder クラス
アセンブリ: System.Data (system.data.dll 内)


OleDbDataAdapter では、データ ソースに関連付けられた DataSet への変更を調整する SQL ステートメントが自動的には生成されません。ただし、OleDbDataAdapter の SelectCommand プロパティを設定すると、単一テーブルを更新する SQL ステートメントを自動的に生成する OleDbCommandBuilder オブジェクトを作成できます。これによって、追加の SQL ステートメントが、OleDbCommandBuilder によって自動的に生成されます。
DataAdapter プロパティを設定すると、OleDbCommandBuilder が RowUpdating イベントのリスナとして自動的に登録されます。相互に関連付けることのできる OleDbDataAdapter オブジェクトと OleDbCommandBuilder オブジェクトは、それぞれ一度に 1 つだけです。
OleDbCommandBuilder では、INSERT、UPDATE、または DELETE ステートメントを生成するために、SelectCommand プロパティを通じて必要なメタデータ セットが自動的に取得されます。最初の更新の後など、メタデータが取得された後で SelectCommand を変更した場合は、RefreshSchema メソッドを呼び出してメタデータを更新する必要があります。
また、OleDbCommandBuilder では、SelectCommand が参照する Connection、CommandTimeout、および Transaction プロパティも使用されます。これらの 1 つ以上のプロパティを変更した場合、または SelectCommand 自体を置き換えた場合は、ユーザーが RefreshSchema を呼び出す必要があります。この操作を行わないと、InsertCommand、UpdateCommand、および DeleteCommand プロパティが、変更前の値のままになります。
Dispose を呼び出すと、OleDbCommandBuilder と OleDbDataAdapter の関連付けが解除され、生成されたコマンドは使用されなくなります。

OleDbCommand を OleDbDataAdapter および OleDbConnection と共に使用して、データ ソースから行を選択する例を次に示します。この例では、初期化済みの DataSet、接続文字列、クエリ文字列 (SQL SELECT ステートメント)、およびデータ ソース テーブル名の文字列が渡されます。この例では、続いて、OleDbCommandBuilder を作成します。
Public Shared Function UpdateRows(connectionString As String, _ queryString As String, tableName As String) As DataSet Dim dataSet As DataSet = New DataSet Using connection As New OleDbConnection(connectionString) Dim adapter As New OleDbDataAdapter() adapter.SelectCommand = New OleDbCommand(queryString, connection) Dim cb As OleDbCommandBuilder = New OleDbCommandBuilder(adapter) connection.Open() adapter.Fill(dataSet, tableName) ' Code to modify data in DataSet here ' Without the OleDbCommandBuilder this line would fail. adapter.Update(dataSet, tableName) End Using Return dataSet End Function
public static DataSet UpdateRows(string connectionString, string queryString, string tableName) { DataSet dataSet = new DataSet(); using (OleDbConnection connection = new OleDbConnection(connectionString)) { OleDbDataAdapter adapter = new OleDbDataAdapter(); adapter.SelectCommand = new OleDbCommand(queryString, connection); OleDbCommandBuilder cb = new OleDbCommandBuilder(adapter); connection.Open(); adapter.Fill(dataSet, tableName); //code to modify data in DataSet here //Without the OleDbCommandBuilder this line would fail adapter.Update(dataSet, tableName); connection.Close(); } return dataSet; }

System.MarshalByRefObject
System.ComponentModel.Component
System.Data.Common.DbCommandBuilder
System.Data.OleDb.OleDbCommandBuilder


Windows 98, Windows 2000 SP4, Windows Millennium Edition, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。


OleDbCommandBuilder コンストラクタ ()
アセンブリ: System.Data (system.data.dll 内)


Windows 98, Windows 2000 SP4, Windows Millennium Edition, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。


OleDbCommandBuilder コンストラクタ (OleDbDataAdapter)
アセンブリ: System.Data (system.data.dll 内)


このプロパティで指定した OleDbDataAdapter が生成する RowUpdating イベントのリスナとして、OleDbCommandBuilder が自動的に登録されます。
新しい OleDbCommandBuilder インスタンスを作成すると、この OleDbDataAdapter に関連付けられていた既存の OleDbCommandBuilder が解放されます。

Windows 98, Windows 2000 SP4, Windows Millennium Edition, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。


OleDbCommandBuilder コンストラクタ

名前 | 説明 |
---|---|
OleDbCommandBuilder () | OleDbCommandBuilder クラスの新しいインスタンスを初期化します。 |
OleDbCommandBuilder (OleDbDataAdapter) | 関連付ける OleDbDataAdapter オブジェクトを指定して、OleDbCommandBuilder クラスの新しいインスタンスを初期化します。 |

OleDbCommandBuilder プロパティ

名前 | 説明 | |
---|---|---|
![]() | CatalogLocation | DbCommandBuilder クラスのインスタンスの CatalogLocation を設定または取得します。 ( DbCommandBuilder から継承されます。) |
![]() | CatalogSeparator | DbCommandBuilder クラスのインスタンスのカタログの区切り記号として使用する文字列を設定または取得します。 ( DbCommandBuilder から継承されます。) |
![]() | ConflictOption | DbCommandBuilder で使用する ConflictOption を指定します。 ( DbCommandBuilder から継承されます。) |
![]() | Container | Component を格納している IContainer を取得します。 ( Component から継承されます。) |
![]() | DataAdapter | SQL ステートメントを自動生成する対象の OleDbDataAdapter オブジェクトを取得または設定します。 |
![]() | QuotePrefix | 名前に空白や予約済みトークンなどの文字を含むデータベース オブジェクト (テーブル、列など) を指定するための開始文字を取得または設定します。 ( DbCommandBuilder から継承されます。) |
![]() | QuoteSuffix | 名前に空白や予約済みトークンなどの文字を含むデータベース オブジェクト (テーブル、列など) を指定するための開始文字を取得または設定します。 ( DbCommandBuilder から継承されます。) |
![]() | SchemaSeparator | スキーマ ID とその他の ID の間の区切り記号に使用する文字を取得または設定します。 ( DbCommandBuilder から継承されます。) |
![]() | SetAllValues | UPDATE ステートメントにすべての列値が含まれるのか、変更になった列値だけが含まれるのかを示します。 ( DbCommandBuilder から継承されます。) |
![]() | Site | Component の ISite を取得または設定します。 ( Component から継承されます。) |

名前 | 説明 | |
---|---|---|
![]() | CanRaiseEvents | コンポーネントがイベントを発生させることがきるかどうかを示す値を取得します。 ( Component から継承されます。) |
![]() | DesignMode | Component が現在デザイン モードかどうかを示す値を取得します。 ( Component から継承されます。) |
![]() | Events | Component に結び付けられているイベント ハンドラのリストを取得します。 ( Component から継承されます。) |

OleDbCommandBuilder メソッド


名前 | 説明 | |
---|---|---|
![]() | Dispose | オーバーロードされます。 Component によって使用されているリソースを解放します。 ( Component から継承されます。) |
![]() | Finalize | Component がガベージ コレクションによってクリアされる前に、アンマネージ リソースを解放し、その他のクリーンアップ操作を実行します。 ( Component から継承されます。) |
![]() | GetService | Component またはその Container で提供されるサービスを表すオブジェクトを返します。 ( Component から継承されます。) |
![]() | MemberwiseClone | オーバーロードされます。 ( MarshalByRefObject から継承されます。) |

OleDbCommandBuilder メンバ
データベースに関連付けられた DataSet への変更を調整するための単一テーブル コマンドを自動的に生成します。このクラスは継承できません。
OleDbCommandBuilder データ型で公開されるメンバを以下の表に示します。


名前 | 説明 | |
---|---|---|
![]() | CatalogLocation | DbCommandBuilder クラスのインスタンスの CatalogLocation を設定または取得します。(DbCommandBuilder から継承されます。) |
![]() | CatalogSeparator | DbCommandBuilder クラスのインスタンスのカタログの区切り記号として使用する文字列を設定または取得します。(DbCommandBuilder から継承されます。) |
![]() | ConflictOption | DbCommandBuilder で使用する ConflictOption を指定します。(DbCommandBuilder から継承されます。) |
![]() | Container | Component を格納している IContainer を取得します。(Component から継承されます。) |
![]() | DataAdapter | SQL ステートメントを自動生成する対象の OleDbDataAdapter オブジェクトを取得または設定します。 |
![]() | QuotePrefix | 名前に空白や予約済みトークンなどの文字を含むデータベース オブジェクト (テーブル、列など) を指定するための開始文字を取得または設定します。(DbCommandBuilder から継承されます。) |
![]() | QuoteSuffix | 名前に空白や予約済みトークンなどの文字を含むデータベース オブジェクト (テーブル、列など) を指定するための開始文字を取得または設定します。(DbCommandBuilder から継承されます。) |
![]() | SchemaSeparator | スキーマ ID とその他の ID の間の区切り記号に使用する文字を取得または設定します。(DbCommandBuilder から継承されます。) |
![]() | SetAllValues | UPDATE ステートメントにすべての列値が含まれるのか、変更になった列値だけが含まれるのかを示します。(DbCommandBuilder から継承されます。) |
![]() | Site | Component の ISite を取得または設定します。(Component から継承されます。) |

名前 | 説明 | |
---|---|---|
![]() | CanRaiseEvents | コンポーネントがイベントを発生させることがきるかどうかを示す値を取得します。(Component から継承されます。) |
![]() | DesignMode | Component が現在デザイン モードかどうかを示す値を取得します。(Component から継承されます。) |
![]() | Events | Component に結び付けられているイベント ハンドラのリストを取得します。(Component から継承されます。) |


名前 | 説明 | |
---|---|---|
![]() | Dispose | オーバーロードされます。 Component によって使用されているリソースを解放します。 (Component から継承されます。) |
![]() | Finalize | Component がガベージ コレクションによってクリアされる前に、アンマネージ リソースを解放し、その他のクリーンアップ操作を実行します。 (Component から継承されます。) |
![]() | GetService | Component またはその Container で提供されるサービスを表すオブジェクトを返します。 (Component から継承されます。) |
![]() | MemberwiseClone | オーバーロードされます。 ( MarshalByRefObject から継承されます。) |


- OleDbCommandBuilderのページへのリンク