IAccessor

This section describes Jet-specific implementation of the IAccessor Interfaces. This includes IAccessor::AddRefAccessor, IAccessor::CreateAccessor, IAccessor::GetBindings, and IAccessor::ReleaseAccessor.

To create an accessor, a consumer calls CreateAccessor. The consumer may create and release accessors at any time while the rowset or command remains in existence. When one thread of a consumer shares an accessor with another thread, it calls AddRefAccessor to increment the reference count of that accessor.

When the consumer is done with a rowset, it calls ReleaseAccessor to release any accessors on the rowset, including accessors inherited from the command. When the consumer is done with a command, it calls ReleaseAccessor to release any accessors created on the command. In both cases, the consumer must call ReleaseAccessor once for each reference count on the accessor.

Method 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.

IAccessor::AddRefAccessor

Adds a reference count to an existing accessor. For information on how this interface is implemented, see the OLE DB Programmer’s Reference. OLE DB Programmer’s Reference

IAccessor::CreateAccessor

CreateAccessor creates an accessor from a set of bindings. For information on how this interface is implemented, see the OLE DB Programmer’s References.

IAccessor::GetBindings

Returns the bindings in an accessor. For information on how this interface is implemented, see the OLE DB Programmer’s References.

IAccessor::ReleaseAccessor

Releases an accessor. For information on how this interface is implemented, see the OLE DB Programmer’s References.

Optimization

Do not try to optimize accessors in this provider. It does not have internal row cache. Therefore, it is not capable of optimization as described in the OLE DB Programmer’s Reference. All accessors are equally optimized as they are in process.