Freigeben über


IAccessorImpl-Klasse

Stellt eine Implementierung der IAccessor-Schnittstelle bereit.

Syntax

template <class T,
   class BindType = ATLBINDINGS,
   class BindingVector = CAtlMap <HACCESSOR hAccessor, BindType* pBindingsStructure>>
class ATL_NO_VTABLE IAccessorImpl : public IAccessorImplBase<BindType>

Parameter

T
Ihre Rowset- oder Befehlsobjektklasse.

BindType
Speichereinheit für Bindungsinformationen. Der Standardwert ist die ATLBINDINGS Struktur (siehe atldb.h).

BindingVector
Speichereinheit für Spalteninformationen. Der Standardwert ist CAtlMap , wobei das Schlüsselelement ein HACCESSOR-Wert ist und das Wertelement ein Zeiger auf eine BindType Struktur ist.

Anforderungen

Header: „atldb.h“

Member

Methoden

Name Beschreibung
IAccessorImpl Der Konstruktor.

Schnittstellenmethoden

Name Beschreibung
AddRefAccessor Fügt einem vorhandenen Accessor eine Verweisanzahl hinzu.
CreateAccessor Erstellt einen Accessor aus einer Reihe von Bindungen.
GetBindings Gibt die Bindungen in einem Accessor zurück.
ReleaseAccessor Gibt einen Accessor frei.

Hinweise

Dies ist für Rowsets und Befehle obligatorisch. OLE DB erfordert, dass Anbieter einen HACCESSOR implementieren, bei dem es sich um ein Tag für ein Array von DBBINDING-Strukturen handelt. HACCESSORs, die von IAccessorImpl ihnen bereitgestellt werden, sind Adressen der BindType Strukturen. Standardmäßig BindType ist sie in der ATLBINDINGS IAccessorImplVorlagendefinition als Vorlage definiert. BindType stellt einen Mechanismus bereit, der verwendet IAccessorImpl wird, um die Anzahl der Elemente in seinem DBBINDING Array sowie eine Verweisanzahl und Accessorkennzeichnungen nachzuverfolgen.

IAccessorImpl::IAccessorImpl

Der Konstruktor.

Syntax

IAccessorImpl();

IAccessorImpl::AddRefAccessor

Fügt einem vorhandenen Accessor eine Verweisanzahl hinzu.

Syntax

STDMETHOD(AddRefAccessor)(HACCESSOR hAccessor,
   DBREFCOUNT* pcRefCount);

Parameter

Siehe "IAccessor::AddRefAccessor " in der OLE DB-Programmierreferenz.

IAccessorImpl::CreateAccessor

Erstellt einen Accessor aus einer Reihe von Bindungen.

Syntax

STDMETHOD(CreateAccessor)(DBACCESSORFLAGS dwAccessorFlags,
   DBCOUNTITEM cBindings,
   const DBBINDING rgBindings[],
   DBLENGTH cbRowSize,
   HACCESSOR* phAccessor,
   DBBINDSTATUS rgStatus[]);

Parameter

Siehe "IAccessor::CreateAccessor " in der OLE DB-Programmierreferenz.

IAccessorImpl::GetBindings

Gibt die grundlegenden Spaltenbindungen des Consumers in einem Accessor zurück.

Syntax

STDMETHOD(GetBindings)(HACCESSOR hAccessor,
   DBACCESSORFLAGS* pdwAccessorFlags,
   DBCOUNTITEM* pcBindings,
   DBBINDING** prgBindings);

Parameter

Siehe IAccessor::GetBindings in der OLE DB-Programmierreferenz.

IAccessorImpl::ReleaseAccessor

Gibt einen Accessor frei.

Syntax

STDMETHOD(ReleaseAccessor)(HACCESSOR hAccessor,
   DBREFCOUNT* pcRefCount);

Parameter

Siehe IAccessor::ReleaseAccessor in der OLE DB-Programmierreferenz.

Siehe auch

OLE DB-Anbietervorlagen
Architektur von OLE DB-Anbietervorlagen