DBMS 6
DBMS 6
DATABASE SYSTEMS
LESSON 6: Relational Database Design by ER- and
EERR-to-Relational Mapping
Chapt
er 7-3
ER-to-Relational Mapping Algorithm
For each weak entity type W in the ER schema with owner entity type
E, create a relation R and include all simple attributes (or simple
components of composite attributes) of W as attributes of R.
In addition, include as foreign key attributes of R the primary key
attribute(s) of the relation(s) that correspond to the owner entity
type(s).
The primary key of R is the combination of the primary key(s) of the
owner(s) and the partial key of the weak entity type W, if any.
Example: Create the relation DEPENDENT in this step to correspond to
the weak entity type DEPENDENT. Include the primary key SSN of the
EMPLOYEE relation as a foreign key attribute of DEPENDENT (renamed to
ESSN).
For each binary 1:1 relationship type R in the ER schema, identify the relations
S and T that correspond to the entity types participating in R. There are three
possible approaches:
(1) Foreign Key approach: Choose one of the relations-S, say-and include a foreign key in S the
primary key of T. It is better to choose an entity type with total participation in R in the role of S.
Example: 1:1 relation MANAGES is mapped by choosing the participating entity type DEPARTMENT
to serve in the role of S, because its participation in the MANAGES relationship type is total.
DEPARTMENT (DNumber, DName, MGRSSN, MGRStartDate)
(2) Merged relation option: An alternate mapping of a 1:1 relationship type is possible by merging
the two entity types and the relationship into a single relation. This may be appropriate when both
participations are total.
(3) Cross-reference or relationship relation option: The third alternative is to set up a third
relation R for the purpose of cross-referencing the primary keys of the two relations S and T
representing the entity types. Chapt
er 7-6
FIGURE 7.1
The ER
conceptual
schema
diagram for
the
COMPANY
database.
Chapt
er 7-7
ER-to-Relational Mapping Algorithm (cont)
For each regular binary 1:N relationship type R, identify the relation S that
represent the participating entity type at the N-side of the relationship type.
Include as foreign key in S the primary key of the relation T that represents
the other entity type participating in R.
Include any simple attributes of the 1:N relation type as attributes of S.
Chapt
er 7-
11
ER-to-Relational Mapping Algorithm (cont)
Chapt
er 7-
13
FIGURE 7.3
Mapping the n-ary relationship type SUPPLY from
Figure 4.11a.
Chapt
er 7-
14
Summary of Mapping constructs and constraints
Chapt
er 7-
15
ER-to-Relational Mapping Algorithm
Step 1: Mapping of Regular Entity Types
Step 2: Mapping of Weak Entity Types
Step 3: Mapping of Binary 1:1 Relation Types
Step 4: Mapping of Binary 1:N Relationship Types.
Step 5: Mapping of Binary M:N Relationship Types.
Step 6: Mapping of Multivalued attributes.
Step 7: Mapping of N-ary Relationship Types.
Chapt
er 7-
18
FIGURE 7.4
Options for mapping specialization or generalization.
(a) Mapping the EER schema in Figure 4.4 using option 8A.
Chapt
er 7-
19
FIGURE 4.3
Generalization. (b) Generalizing CAR and TRUCK into the
superclass VEHICLE.
Chapt
er 7-
20
FIGURE 7.4
Options for mapping specialization or generalization.
(b) Mapping the EER schema in Figure 4.3b using option 8B.
Chapt
er 7-
21
Mapping EER Model Constructs to Relations (cont)
Chapt
er 7-
23
FIGURE 7.4
Options for mapping specialization or generalization.
(c) Mapping the EER schema in Figure 4.4 using option 8C.
Chapt
er 7-
24
FIGURE 4.5
EER diagram notation for an overlapping (nondisjoint)
specialization.
Chapt
er 7-
25
FIGURE 7.4
Options for mapping specialization or generalization.
(d) Mapping Figure 4.5 using option 8D with Boolean type fields Mflag
and Pflag.
Chapt
er 7-
26
Mapping EER Model Constructs to Relations (cont)
Chapt
er 7-
27
FIGURE 4.7
A specialization
lattice with
multiple
inheritance for a
UNIVERSITY
database.
Chapt
er 7-
28
FIGURE 7.5
Mapping the EER specialization lattice in Figure 4.7
using multiple options.
Chapt
er 7-
29
Mapping EER Model Constructs to Relations (cont)
Chapt
er 7-
30
FIGURE 4.8
Two categories (union
types): OWNER and
REGISTERED_VEHICLE.
Chapt
er 7-
31
FIGURE 7.6
Mapping the EER
categories (union
types) in Figure 4.8
to relations.
PERSON has SSN as
its alternative
OwnerID
Chapt
er 7-
32
Homework 1
Chapt
Converting the above ER schema for a SHIP_TRACKING database into the relational
er 7-
schema
33
Homework 2
Project:
Converting the ERD of your application into the relational
schema