OracleCommandBuilderとは? わかりやすく解説

OracleCommandBuilder イベント


OracleCommandBuilder クラス

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

名前空間: System.Data.OracleClient
アセンブリ: System.Data.OracleClient (system.data.oracleclient.dll 内)
構文構文

Public NotInheritable Class
 OracleCommandBuilder
    Inherits DbCommandBuilder
Dim instance As OracleCommandBuilder
public sealed class OracleCommandBuilder :
 DbCommandBuilder
public ref class OracleCommandBuilder sealed
 : public DbCommandBuilder
public final class OracleCommandBuilder extends
 DbCommandBuilder
public final class OracleCommandBuilder extends
 DbCommandBuilder
解説解説

OracleDataAdapter では、データベースに関連付けられた DataSet への変更を調整する SQL ステートメントは、自動的に生成されません。ただし、OracleDataAdapter の SelectCommand プロパティを設定して、単一テーブルを更新する SQL ステートメントを自動的に生成する OracleCommandBuilder オブジェクトを作成できます。続いて、OracleCommandBuilder により、未設定の SQL ステートメントが追加で自動生成されます。

OracleDataAdapter とそれに対応する OracleCommandBuilder 間のリレーションシップは、常に 1 対 1 です。この対応を作成するには、OracleCommandBuilder オブジェクトの OracleDataAdapter プロパティを設定します。その結果、OracleCommandBuilder はリスナとして登録され、DataSet を対象とする RowUpdating イベントの出力を生成します。

OracleCommandBuilder では、INSERT、UPDATE、または DELETE ステートメントを生成するために、SelectCommand プロパティを使用して必要なメタデータ セットが取得されます。

また、OracleCommandBuilder では、SelectCommand が参照する Connection プロパティと Transaction プロパティも使用されます。

Dispose を呼び出すと、OracleCommandBuilder と OracleDataAdapter の関連付けが解除され、生成されたコマンドは使用されなくなります。

使用例使用例

OracleCommand を OracleDataAdapter および OracleConnection と共に使用して、データベースから行を選択する例を次に示します。この例のコードには、初期化済みの DataSet、接続文字列、クエリ文字列 (SQL SELECT ステートメント)、およびデータベース テーブル名の文字列が渡されます。この例では、続いて、OracleCommandBuilder を作成します。

[Visual Basic]

Private Function SelectOracleRows(connection As String, queryString As String, tableName
 As String) As DataSet

   Dim connection As New OracleConnection(connection)
   Dim dataAdapter As New OracleDataAdapter()
   Dim dataSet As DataSet = New DataSet

   dataAdapter.SelectCommand = New OracleCommand(queryString, connection)

   Dim cmdBuilder As OracleCommandBuilder = New OracleCommandBuilder(dataAdapter)

   connection.Open()
   dataAdapter.Fill(dataSet, tableName)
      ' Code to modify data in DataSet here 
      ' Without the OracleCommandBuilder this line would fail.
   dataAdapter.Update(dataSet, tableName)
   connection.Close()
End Function

[C#]

public static DataSet SelectOracleSrvRows(string myConnection, string mySelectQuery,
 string myTableName)
{
   OracleConnection myConn = new OracleConnection(myConnection);
   OracleDataAdapter myDataAdapter = new OracleDataAdapter();
   myDataAdapter.SelectCommand = new OracleCommand(mySelectQuery, myConn);
   OracleCommandBuilder cb = new OracleCommandBuilder(myDataAdapter);

   myConn.Open();
   DataSet ds = new DataSet();
   myDataAdapter.Fill(ds, myTableName);

   //Code to modify data in DataSet goes here...

   //Without the OracleCommandBuilder this line would fail.
   myDataAdapter.Update(ds, myTableName);
   myConn.Close();
   return ds;
}
継承階層継承階層
System.Object
   System.MarshalByRefObject
     System.ComponentModel.Component
       System.Data.Common.DbCommandBuilder
        System.Data.OracleClient.OracleCommandBuilder
スレッド セーフスレッド セーフ
この型の public static (Visual Basic では Shared) メンバはすべて、スレッド セーフです。インスタンス メンバの場合は、スレッド セーフであるとは限りません。
プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照

OracleCommandBuilder コンストラクタ ()

OracleCommandBuilder の新しいインスタンスを初期化します。

名前空間: System.Data.OracleClient
アセンブリ: System.Data.OracleClient (system.data.oracleclient.dll 内)
構文構文

Dim instance As New OracleCommandBuilder
public OracleCommandBuilder ()
public:
OracleCommandBuilder ()
public OracleCommandBuilder ()
public function OracleCommandBuilder ()
解説解説

このプロパティで指定した OracleDataAdapter が生成する RowUpdating イベントのリスナとして、OracleCommandBuilder が自動的に登録されます。

新しい OracleCommandBuilder インスタンスを作成すると、この OracleDataAdapter に関連付けられていた既存の OracleCommandBuilder が解放されます。

プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照
関連項目
OracleCommandBuilder クラス
OracleCommandBuilder メンバ
System.Data.OracleClient 名前空間

OracleCommandBuilder コンストラクタ (OracleDataAdapter)

関連付ける OracleDataAdapter オブジェクトを指定して、OracleCommandBuilder クラスの新しいインスタンスを初期化します。

名前空間: System.Data.OracleClient
アセンブリ: System.Data.OracleClient (system.data.oracleclient.dll 内)
構文構文

Public Sub New ( _
    adapter As OracleDataAdapter _
)
Dim adapter As OracleDataAdapter

Dim instance As New OracleCommandBuilder(adapter)
public OracleCommandBuilder (
    OracleDataAdapter adapter
)
public:
OracleCommandBuilder (
    OracleDataAdapter^ adapter
)
public OracleCommandBuilder (
    OracleDataAdapter adapter
)
public function OracleCommandBuilder (
    adapter : OracleDataAdapter
)

パラメータ

adapter

OracleCommandBuilder に関連付ける OracleDataAdapter オブジェクト。

解説解説

このプロパティで指定した OracleDataAdapter が生成する RowUpdating イベントのリスナとして、OracleCommandBuilder が自動的に登録されます。

新しい OracleCommandBuilder インスタンスを作成すると、この OracleDataAdapter に関連付けられていた既存の OracleCommandBuilder が解放されます。

プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照
関連項目
OracleCommandBuilder クラス
OracleCommandBuilder メンバ
System.Data.OracleClient 名前空間

OracleCommandBuilder コンストラクタ

OracleCommandBuilder の新しいインスタンスを初期化します。
オーバーロードの一覧オーバーロードの一覧

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

関連項目

OracleCommandBuilder クラス
OracleCommandBuilder メンバ
System.Data.OracleClient 名前空間

OracleCommandBuilder プロパティ


パブリック プロパティパブリック プロパティ

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

関連項目

OracleCommandBuilder クラス
System.Data.OracleClient 名前空間

その他の技術情報

コマンドの自動生成

OracleCommandBuilder メソッド


パブリック メソッドパブリック メソッド

( プロテクト メソッド も参照)
  名前 説明
パブリック メソッド CreateObjRef  リモート オブジェクトとの通信に使用するプロキシの生成に必要な情報をすべて格納しているオブジェクトを作成します。 ( MarshalByRefObject から継承されます。)
パブリック メソッド DeriveParameters OracleCommand で指定したストアド プロシージャからパラメータ情報を取得し、指定した OracleCommand オブジェクトの Parameters コレクションにパラメータを格納します。
パブリック メソッド Dispose  オーバーロードされます。 DbCommandBuilder によって使用されているリソースを解放します。 ( DbCommandBuilder から継承されます。)
パブリック メソッド Equals  オーバーロードされます。 2 つの Object インスタンスが等しいかどうかを判断します。 ( Object から継承されます。)
パブリック メソッド GetDeleteCommand オーバーロードされます。 データベースで削除処理を実行するための、自動生成された OracleCommand オブジェクトを取得します。
パブリック メソッド GetHashCode  特定の型のハッシュ関数として機能します。GetHashCode は、ハッシュ アルゴリズムや、ハッシュ テーブルのようなデータ構造での使用に適しています。 ( Object から継承されます。)
パブリック メソッド GetInsertCommand オーバーロードされます。 データベースで挿入処理を実行するための、自動生成された OracleCommand オブジェクトを取得します。
パブリック メソッド GetLifetimeService  対象のインスタンスの有効期間ポリシーを制御する、現在の有効期間サービス オブジェクトを取得します。 ( MarshalByRefObject から継承されます。)
パブリック メソッド GetType  現在のインスタンスの Type を取得します。 ( Object から継承されます。)
パブリック メソッド GetUpdateCommand オーバーロードされます。 データベースで更新処理を実行するための、自動生成された OracleCommand オブジェクトを取得します。
パブリック メソッド InitializeLifetimeService  対象のインスタンスの有効期間ポリシーを制御する、有効期間サービス オブジェクトを取得します。 ( MarshalByRefObject から継承されます。)
パブリック メソッド QuoteIdentifier オーバーライドされます。 大文字と小文字を正しく区別したカタログ内の、引用符で囲まれていない ID が指定されると、その ID を引用符で囲まれた正しい形式で返します。ID 内に埋め込まれている引用符はすべて適切にエスケープされます。
パブリック メソッド ReferenceEquals  指定した複数の Object インスタンスが同一かどうかを判断します。 ( Object から継承されます。)
パブリック メソッド RefreshSchema  この DbCommandBuilder に関連付けられているコマンドを削除します。 ( DbCommandBuilder から継承されます。)
パブリック メソッド ToString  Component の名前を格納している String を返します (存在する場合)。このメソッドはオーバーライドできません。 ( Component から継承されます。)
パブリック メソッド UnquoteIdentifier オーバーライドされます。 引用符で囲まれた ID が指定されると、その ID を引用符で囲まれない正しい形式で返します。ID 内に埋め込まれている引用符はすべて適切にエスケープ解除されます。
プロテクト メソッドプロテクト メソッド
  名前 説明
プロテクト メソッド ApplyParameterInfo  DbCommandBuilder クラスのプロバイダの実装が、追加パラメータのプロパティを処理できるようにします。 ( DbCommandBuilder から継承されます。)
プロテクト メソッド Dispose  オーバーロードされます。 DbCommandBuilder によって使用されているリソースを解放します。 ( DbCommandBuilder から継承されます。)
プロテクト メソッド Finalize  Component がガベージ コレクションによってクリアされる前に、アンマネージ リソースを解放し、その他のクリーンアップ操作を実行します。 ( Component から継承されます。)
プロテクト メソッド GetParameterName  オーバーロードされます。 指定したパラメータの名前を返します。 ( DbCommandBuilder から継承されます。)
プロテクト メソッド GetParameterPlaceholder  関連付けられた SQL ステートメントのパラメータのプレースホルダを返します。 ( DbCommandBuilder から継承されます。)
プロテクト メソッド GetSchemaTable  DbCommandBuilder に対するスキーマ テーブルを返します。 ( DbCommandBuilder から継承されます。)
プロテクト メソッド GetService  Component またはその Container で提供されるサービスを表すオブジェクトを返します。 ( Component から継承されます。)
プロテクト メソッド InitializeCommand  DbCommand の CommandTimeout、Transaction、CommandType、および UpdateRowSource の各プロパティをリセットします。 ( DbCommandBuilder から継承されます。)
プロテクト メソッド MemberwiseClone  オーバーロードされます。 ( MarshalByRefObject から継承されます。)
プロテクト メソッド RowUpdatingHandler  RowUpdating イベントのイベント ハンドラを追加します。 ( DbCommandBuilder から継承されます。)
プロテクト メソッド SetRowUpdatingHandler  DbCommandBuilder を登録して、DbDataAdapter の RowUpdating イベントを処理します。 ( DbCommandBuilder から継承されます。)
参照参照

関連項目

OracleCommandBuilder クラス
System.Data.OracleClient 名前空間

その他の技術情報

コマンドの自動生成

OracleCommandBuilder メンバ

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

OracleCommandBuilder データ型で公開されるメンバを以下の表に示します。


パブリック コンストラクタパブリック コンストラクタ
  名前 説明
パブリック メソッド OracleCommandBuilder オーバーロードされます。 OracleCommandBuilder の新しいインスタンスを初期化します。
パブリック プロパティパブリック プロパティ
( プロテクト プロパティ も参照)
  名前 説明
パブリック プロパティ CatalogLocation オーバーライドされます。 DbCommandBuilder クラスのインスタンスの CatalogLocation を設定または取得します。
パブリック プロパティ CatalogSeparator オーバーライドされます。 DbCommandBuilder クラスのインスタンスのカタログの区切り記号として使用する文字列を設定または取得します。
パブリック プロパティ ConflictOption  DbCommandBuilder で使用する ConflictOption を指定します。(DbCommandBuilder から継承されます。)
パブリック プロパティ Container  Component を格納している IContainer を取得します。(Component から継承されます。)
パブリック プロパティ DataAdapter この OracleCommandBuilder オブジェクトが生成する SQL ステートメントの対象となる OracleDataAdapter オブジェクトを取得または設定します。
パブリック プロパティ QuotePrefix  名前に空白や予約済みトークンなどの文字を含むデータベース オブジェクト (テーブル、列など) を指定するための開始文字を取得または設定します。(DbCommandBuilder から継承されます。)
パブリック プロパティ QuoteSuffix  名前に空白や予約済みトークンなどの文字を含むデータベース オブジェクト (テーブル、列など) を指定するための開始文字を取得または設定します。(DbCommandBuilder から継承されます。)
パブリック プロパティ SchemaSeparator オーバーライドされます。 スキーマ ID とその他の ID の間の区切り記号に使用する文字列を取得または設定します。
パブリック プロパティ SetAllValues  UPDATE ステートメントにすべての列値が含まれるのか、変更になった列値だけが含まれるのかを示します。(DbCommandBuilder から継承されます。)
パブリック プロパティ Site  Component の ISite を取得または設定します。(Component から継承されます。)
プロテクト プロパティプロテクト プロパティ
パブリック メソッドパブリック メソッド
( プロテクト メソッド も参照)
  名前 説明
パブリック メソッド CreateObjRef  リモート オブジェクトとの通信に使用するプロキシの生成に必要な情報をすべて格納しているオブジェクトを作成します。 (MarshalByRefObject から継承されます。)
パブリック メソッド DeriveParameters OracleCommand で指定したストアド プロシージャからパラメータ情報を取得し、指定した OracleCommand オブジェクトの Parameters コレクションにパラメータを格納します。
パブリック メソッド Dispose  オーバーロードされます。 DbCommandBuilder によって使用されているリソースを解放します。 (DbCommandBuilder から継承されます。)
パブリック メソッド Equals  オーバーロードされます。 2 つの Object インスタンスが等しいかどうかを判断します。 (Object から継承されます。)
パブリック メソッド GetDeleteCommand オーバーロードされます。 データベースで削除処理を実行するための、自動生成された OracleCommand オブジェクトを取得します。
パブリック メソッド GetHashCode  特定の型のハッシュ関数として機能します。GetHashCode は、ハッシュ アルゴリズムや、ハッシュ テーブルのようなデータ構造での使用に適しています。 (Object から継承されます。)
パブリック メソッド GetInsertCommand オーバーロードされます。 データベースで挿入処理を実行するための、自動生成された OracleCommand オブジェクトを取得します。
パブリック メソッド GetLifetimeService  対象のインスタンスの有効期間ポリシーを制御する、現在の有効期間サービス オブジェクトを取得します。 (MarshalByRefObject から継承されます。)
パブリック メソッド GetType  現在のインスタンスの Type を取得します。 (Object から継承されます。)
パブリック メソッド GetUpdateCommand オーバーロードされます。 データベースで更新処理を実行するための、自動生成された OracleCommand オブジェクトを取得します。
パブリック メソッド InitializeLifetimeService  対象のインスタンスの有効期間ポリシーを制御する、有効期間サービス オブジェクトを取得します。 (MarshalByRefObject から継承されます。)
パブリック メソッド QuoteIdentifier オーバーライドされます。 大文字と小文字を正しく区別したカタログ内の、引用符で囲まれていない ID が指定されると、その ID を引用符で囲まれた正しい形式で返します。ID 内に埋め込まれている引用符はすべて適切にエスケープされます。
パブリック メソッド ReferenceEquals  指定した複数の Object インスタンスが同一かどうかを判断します。 (Object から継承されます。)
パブリック メソッド RefreshSchema  この DbCommandBuilder に関連付けられているコマンドを削除します。 (DbCommandBuilder から継承されます。)
パブリック メソッド ToString  Component の名前を格納している String を返します (存在する場合)。このメソッドはオーバーライドできません。 (Component から継承されます。)
パブリック メソッド UnquoteIdentifier オーバーライドされます。 引用符で囲まれた ID が指定されると、その ID を引用符で囲まれない正しい形式で返します。ID 内に埋め込まれている引用符はすべて適切にエスケープ解除されます。
プロテクト メソッドプロテクト メソッド
  名前 説明
プロテクト メソッド ApplyParameterInfo  DbCommandBuilder クラスのプロバイダの実装が、追加パラメータのプロパティを処理できるようにします。 (DbCommandBuilder から継承されます。)
プロテクト メソッド Dispose  オーバーロードされます。 DbCommandBuilder によって使用されているリソースを解放します。 (DbCommandBuilder から継承されます。)
プロテクト メソッド Finalize  Component がガベージ コレクションによってクリアされる前に、アンマネージ リソースを解放し、その他のクリーンアップ操作を実行します。 (Component から継承されます。)
プロテクト メソッド GetParameterName  オーバーロードされます。 指定したパラメータの名前を返します。 (DbCommandBuilder から継承されます。)
プロテクト メソッド GetParameterPlaceholder  関連付けられた SQL ステートメントのパラメータのプレースホルダを返します。 (DbCommandBuilder から継承されます。)
プロテクト メソッド GetSchemaTable  DbCommandBuilder に対するスキーマ テーブルを返します。 (DbCommandBuilder から継承されます。)
プロテクト メソッド GetService  Component またはその Container で提供されるサービスを表すオブジェクトを返します。 (Component から継承されます。)
プロテクト メソッド InitializeCommand  DbCommand の CommandTimeout、Transaction、CommandType、および UpdateRowSource の各プロパティをリセットします。 (DbCommandBuilder から継承されます。)
プロテクト メソッド MemberwiseClone  オーバーロードされます。 ( MarshalByRefObject から継承されます。)
プロテクト メソッド RowUpdatingHandler  RowUpdating イベントのイベント ハンドラを追加します。 (DbCommandBuilder から継承されます。)
プロテクト メソッド SetRowUpdatingHandler  DbCommandBuilder を登録して、DbDataAdapter の RowUpdating イベントを処理します。 (DbCommandBuilder から継承されます。)
パブリック イベントパブリック イベント
参照参照

関連項目

OracleCommandBuilder クラス
System.Data.OracleClient 名前空間

その他の技術情報

コマンドの自動生成



英和和英テキスト翻訳

英語⇒日本語日本語⇒英語

辞書ショートカット

すべての辞書の索引

「OracleCommandBuilder」の関連用語

OracleCommandBuilderのお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



OracleCommandBuilderのページの著作権

   
日本マイクロソフト株式会社日本マイクロソフト株式会社
© 2026 Microsoft.All rights reserved.

©2026 GRAS Group, Inc.RSS