次の方法で共有


コマンドとテーブル

コマンドとテーブルを使用すると、行セットにアクセスする (行セットを開き、コマンドを実行して、列をバインドする) ことができます。 CCommand クラスと CTable クラスを使用すると、それぞれコマンド オブジェクトとテーブル オブジェクトのインスタンスが作成されます。 これらのクラスは、次の図に示すように、CAccessorRowset から派生します。

CCommand と CTable の関係を示す図。
コマンド クラスとテーブル クラス

前の表では、TAccessor は「アクセサー型」に示されている任意のアクセサー型にすることができます。 TRowset は、「行セット型」に示されている任意の行セット型にすることができます。 TMultiple では、結果の種類 (単一または複数の結果セット) を指定します。

ATL OLE DB コンシューマー ウィザードでは、コマンドまたはテーブル オブジェクトを必要とするかどうかを指定できます。

  • コマンドのないデータソ ースの場合は、CTable クラスを使用できます。 通常は、パラメーターを指定せず、複数の結果を必要としない単純な行セットに使用します。 この単純なクラスによって、ユーザーが指定したテーブル名を使用して、データ ソースのテーブルが開かれます。

  • コマンドをサポートするデータソースの場合は、代わりに CCommand クラスを使用できます。 コマンドを実行するには、このクラスで Open を呼び出します。 別の方法として、Prepare を呼び出して、複数回実行するコマンドを準備することもできます。

    CCommand には、アクセサー型、行セット型、および結果型 (既定では CNoMultipleResults、または CMultipleResults) の 3 つのテンプレート引数があります。 CMultipleResults を指定した場合、CCommand クラスでは IMultipleResults インターフェイスをサポートし、複数の行セットを処理します。 DBVIEWER のサンプルは、複数の結果を処理する方法を示します。

関連項目

OLE DB コンシューマー テンプレートに関するページ