The Clash of the (database) Cultures Object- oriented Relational
Two strategies in order to combine the „cultures“: (1)Relational – object-oriented Example: Fastobjects‘ ODBC interface (2)Object – relational Example: SQL 3 or SQL:2003
Object-relational databases based on SQL-3 are partwise according to the Manifesto : Complex objects Objekt identity EncapsulationNo Types (and Classes) Class or Type Hierarchies Overriding, overloading and late bindingNo Computational completeness Extensibility Persistence Secondary storage management Concurrency Recovery Ad Hoc Query Facility
CREATE TYPE PersonType AS (Name VARCHAR (30), Address VARCHAR (50)) NOT FINAL; Structures table type Inherited type CREATE TYPE StaffMemberType UNDER PersonType AS (Salary DECIMAL (6)) NOT FINAL; Table definition based on a type; insertion of an OID CREATE TABLE StaffMember OF StaffMemberType (REF IS oid SYSTEM GENERATED); For more details see: Examples
(2) Object-oriented database systems offer relational interfaces Example: Fastobjects‘ ODBC interface
Architecture of FastObjects ODBC FastObjects database FastObjects Engine C++ Application (native API) Object-oriented Access database Access Engine Access ODBC driver C++ Application (ODBC API) Relational FastObjects ODBC driver Access Client Access database