db_table
OLE DB テーブルを開きます。
構文
[ db_table(db_table, name, source_name, hresult) ]
パラメーター
db_table
データベース テーブルの名前を指定する文字列 ("Products" など)。
name
(省略可能) テーブルの操作に使用するハンドルの名前。 複数の結果行を返す場合は、このパラメーターを指定する必要があります。 db_table は、指定された名前を持つ変数を生成します。この変数は、行セットの走査、複数のアクション クエリの実行のために使用できます。
source_name
(省略可能) コマンドが実行される db_source
属性が適用されているクラスの CSession
変数またはインスタンス。 「 db_source」をご覧ください。
hresult
(省略可能) このデータベース コマンドの HRESULT を受け取る変数を識別します。 変数が存在しない場合は、属性によって自動的に挿入されます。
解説
db_table は、テーブルを開くために OLE DB コンシューマーによって使用される CTable オブジェクトを作成します。 この属性はクラス レベルでのみ使用できます。インラインで使用することはできません。 db_column
を使用してテーブル列を変数にバインドします。db_param
を使用して、パラメーターを区切ります (パラメーターの型などの設定)。
コンシューマー属性プロバイダーがこの属性をクラスに適用すると、コンパイラはクラスの名前を _YourClassNameAccessor に変更します。ここで、YourClassName はユーザーがクラスに指定した名前です。コンパイラは、_YourClassNameAccessor から派生する YourClassName という名前のクラスの作成も行います。 クラス ビューでは、両方のクラスが表示されます。
例
次の例では、CProducts
で使用する Products テーブルを開きます。
// db_table.cpp
// compile with: /LD
#include <atlbase.h>
#include <atlplus.h>
#include <atldbcli.h>
[ db_table(L"dbo.Products") ]
class CProducts {
[ db_column("1") ] LONG m_ProductID;
};
アプリケーションで使用されるこの属性の例については、「MultiRead」を参照してください。
要件
属性コンテキスト | Value |
---|---|
適用対象 | $ |
反復可能 | いいえ |
必要な属性 | なし |
無効な属性 | なし |
属性コンテキストの詳細については、「 属性コンテキスト」を参照してください。