Tables, Columns and Domains - Supertypes and Subtypes

Previous Next

In RDBMS environments, the relation between a real-life entity (such as a person) and its attributes (such as age and gender) is thought of in terms of tables (one for each entity) with one or more columns (one for each attribute). A number of the entities in the database will be quite similar in many respects while perhaps only slightly different in others. For these entities the question arises whether to:

· Define one table with many optional columns.


· Define a different table for each entity.


· Define a common core of attributes (called supertypes) with variable additions (called subtypes).

USoft Developer supports all three methods, but recommends that you use the third one. For example, you could have a Person table containing names and addresses, and use subtypes to specify what type of job each person has, as shown below.

Example of supertypes and subtypes

Related Topics

Advantages of Using Supertypes and Subtypes

Subtype Definitions and Subtype Sets

Exclusivity and Totality Rules for Subtype Sets

Relationship Inheritance from Supertype to Subtype (RELATE)

Supertype and Subtype Window Layout

Manipulating Supertype and Subtype Records

Setting Defaults for Supertypes and Subtypes

Setting Delete Super on Delete

Setting Update Supertype on Insert

Constraints on Supertypes and Subtypes

Transitional Constraints on Supertypes and Subtypes

Changing a Single-Table Implementation into a Multiple-Subtypes Implementation

Authorization on Supertypes and Subtypes