MDAC 2.5 SDK - OLE DB Providers
OLE DB Provider for Oracle


 

Sessions

A provider session represents a single connection to an Oracle server.

OLE DB requires that sessions delimit transaction space for a data source. All command objects created from a specific session object will participate in the local or distributed transaction of the session object.

The first session object created on the initialized data source receives the Oracle connection established at initialization. When all references on the interfaces of the session object are released, the Oracle connection becomes available to another session object created on the data source.

An additional session object created on the data source establishes its own connection to the Oracle Provider as specified by the data source. The Oracle connection is dropped when the application releases all references to objects created during that session.

For more information about Go to
Sessions "Sessions" in Chapter 2 of the OLE DB Programmer's Reference, "Data Source and Session Objects"
Transactions "Transaction Management" in Chapter 1 of the OLE DB Programmer's Reference, "Overview of OLE DB"
Data sources "Data Source Objects" in Chapter 2 of the OLE DB Programmer's Reference, "Data Source and Session Objects"

Creating new provider session objects can generate significant application overhead for applications that continually create and release session objects. The overhead can be minimized by managing the provider session objects efficiently. OLE DB Provider for Oracle applications can keep the Oracle connection of a session object active by maintaining a reference on at least one interface of the session object.

To provide advanced schema information about the kind of data in a data store, you can use the IDBSchemaRowset interface. When using the GetRowset method on this interface, only a case-sensitive selection is performed if a quoted value is passed in.