This invention is directed to relational extenders for a computer-based
relational database. Each relational
extender includes at least one column, in a first, business, table containing a
user defined application
database, dedicated to object handles for defining the
complex data type of an object; a second, attribute, table containing at least one column defining a unique characteristic associated with the one object and one column dedicated to containing the object
handle; and a third,
metadata, table containing at least one column defining a common characteristic associated with all objects defined within the business table and one column dedicated to containing the object
handle and at least one column dedicated to containing a reference to object data associated with the object. The relational
extender further includes a fourth table containing a reference to each object
handle column defined in the first table, a fifth table containing the names of the second and third tables for each object defined in the first table, a sixth table containing a reference to each object handle removed from the first table and including one column dedicated to containing a reference to the location of the object data associated with the removed object handle, and a seventh table having at least one column which describes a property of the
data type of each object defined in the first table. The relational
extender further includes an eighth table as a temporary holding table for the second table, and a ninth table as a temporary holding table for the third table. Both the eighth and ninth tables are used in conjunction with the extender triggers to ensure
data integrity.