Presentation is loading. Please wait.

Presentation is loading. Please wait.

ER- Relational Mapping (Based on Chapter 9 in Fundamentals of Database Systems by Elmasri and Navathe, Ed. 3)

Similar presentations


Presentation on theme: "ER- Relational Mapping (Based on Chapter 9 in Fundamentals of Database Systems by Elmasri and Navathe, Ed. 3)"— Presentation transcript:

1 ER- Relational Mapping (Based on Chapter 9 in Fundamentals of Database Systems by Elmasri and Navathe, Ed. 3)

2 2 General Guidelines Entity -  Relation N:1 Relationship -  Foreign Key M:N Relationship -  Relation

3 3 ER-to-Relational Mapping Algorithm STEP 1Strong Entity Types STEP 2Weak Entity Types STEP 3Binary N to 1 Relationship Types STEP 4Binary 1 to 1 Relationship Types STEP 5Binary M to N Relationship Types STEP 6Multi-valued Attributes STEP 7n-ary Relationship Types

4 4 STEP 1 Strong Entity Types For each regular (strong) entity type E in the ER schema, create a relation R that includes all the simple attributes. Include only the simple component attributes of a composite attribute.

5 5 Choose one of key attributes of E as primary key of R. If the chosen key of E is composite, the set of simple attributes that form it will together form the primary key of R.

6 6 Entity Types Mapping ET A BA B

7 7 Composite Attributes Mapping ET BADE C E D A B

8 8 STEP 2 Weak Entity Types For each weak entity type W in the ER schema with owner entity type E,  create a relation R, and  include all simple attributes (simple component of composite attributes) of W as attributes of R.

9 9 In addition, include as foreign key attributes of R the primary key attribute(s) of the owner entity type(s); This takes care of the identifying relationship type of W.

10 10 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.

11 11 It is common to choose the propagate (CASCADE) option for the referential triggered action on the foreign key in the identifying entity relation of the weak entity type, since a weak entity has an existence dependency on its owner entity. This can be used for both ON UPDATE and ON DELETE.

12 12 Weak entities ET2 B R ET1 A ET2 A ET1 A B

13 13 STEP 3Binary N:1Relationship Types For each regular binary N:1 relationship type R, identify the relations S that represents the N-side of the relationship type.

14 14 Include as foreign key in S the primary key of the 1-side of R; this is because each entity instance on the N-side is related to at most one entity instance on the 1-side of the relationship type.

15 15 Include any simple attributes (or simple component of composite attributes) of the 1:N relationship type as attributes of S.

16 16 1 to N Relationship Mapping R 1 ET2 ET1 N A ET2 BA B ET1 A NO A B

17 17 STEP 4Binary 1:1 Relationship Types For each binary 1:1 relationship type R in the ER schema, and S and T, the relations that participate in R  Choose one relation, for example S, and  include as foreign key in S the primary key of T.

18 18 1 to 1 Relationship Mapping R 1 ET2 ET1 1 ET2 B ET1 AB A ET2 BA - or - A B

19 19 It is better to choose an entity type with total participating in R as the role of S. Include all simple attributes ( or simple component of composite attributes) of the 1:1 relationship type R as attributes of S.

20 20 1 to 1 relationship ET1 A ET2 BA R 1 ET1 1 A B

21 21 STEP 5Binary M to N Relationship Types For each binary M:N relationship type R, create a new relation S to represent R. Include as a foreign key attributes in S the primary keys of the relations that participates in R; their combination will form the primary key of S.

22 22 STEP 5Binary M to N Relationship Types Also include any simple attributes of the M:N relationship type (or simple component of composite attributes) as attributes of S.

23 23 M to N Relationship Mapping R n ET2 ET1 n ET2 B ET1 A NO ET2 B ET1 A NO ET2 B ET1 A R AB

24 24 STEP 5Binary M to N Relationship Types Notice that we cannot represent an M:N relationship type by a single foreign key attribute in one of the participating relations – as we did for 1:1 or 1:N relationship types – because of the M:N cardinality ratio.

25 25 STEP 5Binary M to N Relationship Types Notice that we can always map 1:1 or 1:N relationships in a manner similar to M:N relationships.

26 26 STEP 6Multivalued Attributes For each multivalued attribute A, create a new relation R. The relation R will include an attribute corresponding to A, plus the primary key attribute K – as a foreign key in R – of the relation that represents the entity type or relationship type that has A as an attribute.

27 27 STEP 6Multi-valued Attributes The primary key of R is the combination of A and K. If the multivalued attribute is composite, we include its simple components.

28 28 Multivalued Attributes Mapping F ET-F AF ET A

29 29 STEP 7n-ary Relationship Types For each n-ary relationship type R, where n>2, create a new relation S to represent R. Include as foreign key attributes in S the primary keys of the relations that represent the participating entity types.

30 30 Also include any simple attributes of the n-ary relationship type (or simple components of composite attributes) as attributes of S. The primary of S is usually a combination of all the foreign keys that reference the relations representing the participating entity types.

31 31 However, if the cardinality constraints on any of entity type E participating in R is 1, then the primary key of S should not include the foreign key attribute that references relation E.

32 32

33 33

34 34

35 35 Notes on ER-to-Relational Mapping Relationships in ER are mapped to foreign key attributes.  A single foreign key needed for 1:1 or 1:N relationships  A extra relation with two foreign keys needed for binary M:N relationship.  For n-ary relationship, n>2, we need an extra relation with n foreign keys.

36 36 Notes on ER-to-Relational Mapping EQUIJOIN operations are needed to materialize the relationships by combining related tuples:  A single EQUIJOIN needed to materialize 1:1 or 1:N relationships.  Two EQUIJOINS needed to materialize binary M:N relationship  N EQUIJOINS needed to materialize the full n-ary relationship.

37 37 Notes on ER-to-Relational Mapping Primary key of weak entity type includes key of owner relation. Primary key of relation representing an n- ary relationship determined by the structural participation constraints.

38 38 Notes on ER-to-Relational Mapping We create a separate relation for each multivalued attribute. This is because the relational model does not allow multiple values (a list, or a set of values) for an attribute in a single table.

39 39 Correspondence Between ER and Relational Models ER ModelRelational Model Entity type“Entity” relation 1:1 or 1:N relationship typeForeign key (or “relationship” relation) M:N relationship type“Relationship” relation and two foreign keys N-ary relationship type“Relationship” relation and n foreign keys Simple attributeAttribute Composite attributeSet of simple component attributes Multivalued attributeRelation and foreign keys Value setDomain Key attributePrimary (or secondary) key


Download ppt "ER- Relational Mapping (Based on Chapter 9 in Fundamentals of Database Systems by Elmasri and Navathe, Ed. 3)"

Similar presentations


Ads by Google