|Oracle® Objects for OLE C++ Class Library Developer's Guide
10g Release 1 (10.1)
Part Number B10119-01
An operational hierarchy of the objects expresses "has-a" and "belongs-to" relationships. This hierarchy can be drawn as follows:
Each client object can have many session objects.
Each session object can only be associated with one client object.
Each session object can have many connection objects.
Each connection object may be shared by many database objects although these must be within the same session object.
Each database object belongs to only one session object.
Each dynaset object belongs to only one database object.
Each SQLstmt belongs to only one database object.
Each field object belongs to only one dynaset object.
Each parameter object belongs to only one database object.
Each paramarray object belongs to only one database object.
Some of these objects can be explicitly created (using Open methods) while others are implicitly created as necessary. The session, database, and dynaset objects can be explicitly created.
One client object exists for each workstation. This object is created when the first session object is created. A connection object may be created when a database is created if that database is not sharing a previously created connection.
See also Objects as Handles