MBA 664 Database Management Dave Salisbury salisbury@udayton.edu (email) http://www.davesalisbury.com/ (web site)
Evolution of the E-R Model Basic E-R Model nearly 25 years old complex data relationships and new database technology have outgrown it in some respects Enhanced E-R Model a response to the shortcomings of the basic E-R model not universally agreed upon in some respects introduced the supertype/subtype relationship
Supertype/Subtype Relationships Supertype (example: Employee) a generic entity that has a relationship with one or more subtypes Subtype (example: Manager) a subgrouping of a supertype entity that is meaningful to an organization shares all attributes of its supertype, but also has unique attributes of its own and/or : has relationships with other entities distinct from those of other subtypes
Supertype/Subtype Notation Delta & Pine Land Company 11/25/97 Supertype/Subtype Notation
The student example STUDENT UNDERGRAD STUDENT GRAD STUDENT
Two Rules for When to Use Supertype/Subtypes Use this type of relationship when either (or both) of the following are present: When there are attributes that apply to some (but not all) of the instances of an entity type When the instances of a subtype participate in a relationship unique to that subtype
Attribute Inheritance “The property by which subtype entities inherit values of all attributes of the supertype. This important property makes it unnecessary to include supertype attributes redundantly with the subtypes.”
Supertype/Subtype Example 1 Hourly_Rate EMPLOYEE SSN Name City/State/Zip Telephone CONSULTANT SALARIED HOURLY Annual_Salary Stock_Option Contract_Number Billing_Rate
Supertype/Subtype Relationships in a Hospital
Two Processes to Develop Supertype/Subtypes Generalization The process of defining a more general entity type from a set of more specialized entity types A “bottom-up” approach Specialization The process of defining one or more subtypes of a general entity based on distinguishing attri-butes or relationships A “top-down” approach Both approaches can be used together
Supertype/Subtype Constraints Completeness Addresses the question of whether an instance of a supertype must also be a member of at least one subtype Disjointness Addresses the question of whether an instance of a supertype may simultaneously be a member of two (or more) subtypes
Completeness Constraint: Two Possible Rules Total Specialization Rule (Double-Line) Specifies that each entity instance of the supertype must be a member of some subtype in the relationship (Example: all STUDENTS are either UNDERGRADUATE or GRADUATE students) Partial Specialization Rule (Single-line) Specifies that an entity instance of the supertype is allowed to not belong to any subtype (Example: FACULTY and STAFF are not the only possible members of the entity EMPLOYEE)
Completeness constraint Total specialization Partial specialization
Disjointed constraint Can an entity instance simultaneously be a member of two or more subtypes? Disjoint rule Overlap rule
Subtype discriminators Attribute of the supertype whose value determines to which subtype an instance belongs
What does that look like?
Yet another example….
Supertype/subtype hierarchy Arrangement of super- and subtypes where each subtype has only one supertype.
Another example...