Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
Provides an implementation of the IAccessor interface.
Syntax
template <class T,
class BindType = ATLBINDINGS,
class BindingVector = CAtlMap <HACCESSOR hAccessor, BindType* pBindingsStructure>>
class ATL_NO_VTABLE IAccessorImpl : public IAccessorImplBase<BindType>
Parameters
T
Your rowset or command object class.
BindType
Storage unit for binding information. The default is the ATLBINDINGS structure (see atldb.h).
BindingVector
Storage unit for column information. The default is CAtlMap where the key element is an HACCESSOR value and the value element is a pointer to a BindType structure.
Requirements
Header: atldb.h
Members
Methods
| Name | Description |
|---|---|
| IAccessorImpl | The constructor. |
Interface Methods
| Name | Description |
|---|---|
| AddRefAccessor | Adds a reference count to an existing accessor. |
| CreateAccessor | Creates an accessor from a set of bindings. |
| GetBindings | Returns the bindings in an accessor. |
| ReleaseAccessor | Releases an accessor. |
Remarks
This is mandatory on rowsets and commands. OLE DB requires providers to implement an HACCESSOR, which is a tag to an array of DBBINDING structures. HACCESSORs provided by IAccessorImpl are addresses of the BindType structures. By default, BindType is defined as an ATLBINDINGS in IAccessorImpl's template definition. BindType provides a mechanism used by IAccessorImpl to track the number of elements in its DBBINDING array as well as a reference count and accessor flags.
IAccessorImpl::IAccessorImpl
The constructor.
Syntax
IAccessorImpl();
IAccessorImpl::AddRefAccessor
Adds a reference count to an existing accessor.
Syntax
STDMETHOD(AddRefAccessor)(HACCESSOR hAccessor,
DBREFCOUNT* pcRefCount);
Parameters
See IAccessor::AddRefAccessor in the OLE DB Programmer's Reference.
IAccessorImpl::CreateAccessor
Creates an accessor from a set of bindings.
Syntax
STDMETHOD(CreateAccessor)(DBACCESSORFLAGS dwAccessorFlags,
DBCOUNTITEM cBindings,
const DBBINDING rgBindings[],
DBLENGTH cbRowSize,
HACCESSOR* phAccessor,
DBBINDSTATUS rgStatus[]);
Parameters
See IAccessor::CreateAccessor in the OLE DB Programmer's Reference.
IAccessorImpl::GetBindings
Returns the basic columns bindings from the consumer in an accessor.
Syntax
STDMETHOD(GetBindings)(HACCESSOR hAccessor,
DBACCESSORFLAGS* pdwAccessorFlags,
DBCOUNTITEM* pcBindings,
DBBINDING** prgBindings);
Parameters
See IAccessor::GetBindings in the OLE DB Programmer's Reference.
IAccessorImpl::ReleaseAccessor
Releases an accessor.
Syntax
STDMETHOD(ReleaseAccessor)(HACCESSOR hAccessor,
DBREFCOUNT* pcRefCount);
Parameters
See IAccessor::ReleaseAccessor in the OLE DB Programmer's Reference.
See also
OLE DB Provider Templates
OLE DB Provider Template Architecture