IAccessorImpl クラス
IAccessor インターフェイスの実装を提供します。
構文
template <class T,
class BindType = ATLBINDINGS,
class BindingVector = CAtlMap <HACCESSOR hAccessor, BindType* pBindingsStructure>>
class ATL_NO_VTABLE IAccessorImpl : public IAccessorImplBase<BindType>
パラメーター
T
行セットまたはコマンド オブジェクト クラス。
BindType
バインド情報のストレージ ユニット。 既定値は ATLBINDINGS
構造体です (atldb.h を参照してください)。
BindingVector
列情報のストレージ ユニット。 既定は CAtlMap です。このキー要素は HACCESSOR 値であり、値要素は BindType
構造体へのポインターです。
要件
ヘッダー: atldb.h
メンバー
メソッド
Name | 説明 |
---|---|
IAccessorImpl | コンストラクター。 |
インターフェイス メソッド
名前 | 説明 |
---|---|
AddRefAccessor | 既存のアクセサーに参照カウントを追加します。 |
CreateAccessor | バインドのセットからアクセサーを作成します。 |
GetBindings | アクセサーのバインドを返します。 |
ReleaseAccessor | アクセサーを解放します。 |
解説
これは、行セットとコマンドで必須です。 OLE DB ではプロバイダーが HACCESSOR (DBBINDING 構造体の配列へのタグ) を実装する必要があります。 IAccessorImpl
で提供される HACCESSOR は BindType
構造体のアドレスです。 既定では、BindType
は IAccessorImpl
のテンプレート定義で ATLBINDINGS
と定義されています。 BindType
には、DBBINDING
配列の要素数、参照カウント、アクセサー フラグを追跡するために IAccessorImpl
が使うメカニズムがあります。
IAccessorImpl::IAccessorImpl
コンストラクター。
構文
IAccessorImpl();
IAccessorImpl::AddRefAccessor
既存のアクセサーに参照カウントを追加します。
構文
STDMETHOD(AddRefAccessor)(HACCESSOR hAccessor,
DBREFCOUNT* pcRefCount);
パラメーター
「OLE DB プログラマーズ リファレンス」の「IAccessor::AddRefAccessor」を参照してください。
IAccessorImpl::CreateAccessor
バインドのセットからアクセサーを作成します。
構文
STDMETHOD(CreateAccessor)(DBACCESSORFLAGS dwAccessorFlags,
DBCOUNTITEM cBindings,
const DBBINDING rgBindings[],
DBLENGTH cbRowSize,
HACCESSOR* phAccessor,
DBBINDSTATUS rgStatus[]);
パラメーター
「OLE DB プログラマーズ リファレンス」の「IAccessor::CreateAccessor」を参照してください。
IAccessorImpl::GetBindings
アクセサーで、コンシューマーから基本的な列バインドを返します。
構文
STDMETHOD(GetBindings)(HACCESSOR hAccessor,
DBACCESSORFLAGS* pdwAccessorFlags,
DBCOUNTITEM* pcBindings,
DBBINDING** prgBindings);
パラメーター
「OLE DB プログラマーズ リファレンス」の「IAccessor::GetBindings」を参照してください。
IAccessorImpl::ReleaseAccessor
アクセサーを解放します。
構文
STDMETHOD(ReleaseAccessor)(HACCESSOR hAccessor,
DBREFCOUNT* pcRefCount);
パラメーター
「OLE DB プログラマーズ リファレンス」の「IAccessor::ReleaseAccessor」を参照してください。