The OraRef interface represents an Oracle REF (reference) as well as a
referenceable object (standalone instance).
An Oracle REF is an identifier to a referenceable object. Referenceable
objects are stored in rows of a object table. By pinning a REF, referenceable objects
are fetched to the client side. An OraRef implicitly pins the underlying REF
when the attributes of a referenceable object is accessed for the first time.
The OraRef also encapsulates the functionality for object navigational operation
utilizing the Complex Object Retrieval Capability (COR).
Attributes of a referenceable object represented by OraRef are accessed in the
same manner as attributes of an value instance represented by the OraObject
interface. When pinned, OraRef contains an OraObject interface through the
containment mechanism in COM. At runtime, OraRef can be typecast to OraObject. OraRef
provides methods for update and delete operations on a referenceable object
independent of the context they originated from, such as dynasets, parameters, and so on.
Object level lock should be obtained before modifying the attributes of a
referenceable object. This is done though the Edit method of the OraRef.
The CreateOraObject method on the OraDatabase object creates a new referenceable object in the
server and returns information associated with the OraRef Object. The CreateOraObject and Update methods pair inserts a new referenceable object in the server.
For information on initializing an OraRef object representing a referenceable
object in OO4O or executing a member method of a referenceable object, see Initializing Oracle LOBs, Objects, and Collection.