DatabaseIM ISU1 Chapter 7 ER- and EER-to-Relational Mapping Fundamentals of Database Systems.

Slides:



Advertisements
Similar presentations
3/25/2017.
Advertisements

Week 5 Relational Database Design by ER- -to-Relational Mapping.
Relational Database Design Via ER Modelling
Mapping ER to Relational Model
1 Class Number – CS 304 Class Name - DBMS Instructor – Sanjay Madria Instructor – Sanjay Madria Lesson Title – EER Model –21th June.
Copyright © 2007 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Slide 7- 1.
Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe Slide 7- 1.
Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe Chapter 7 Relational Database Design by ER- and EER-to-Relational Mapping.
Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe Chapter 7 Relational Database Design by ER- Mapping.
Copyright © 2011 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 9 Relational Database Design by ER- and EER-to- Relational Mapping.
Database Systems Chapter 7 ITM 354. Chapter Outline ER-to-Relational Schema Mapping Algorithm –Step 1: Mapping of Regular Entity Types –Step 2: Mapping.
Copyright © 2011 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 9 Relational Database Design by ER- and EER-to- Relational Mapping.
Summary of Mapping constructs and constraints
Chapter 7 Relational Database Design by ER- and EER-to-Relational Mapping Copyright © 2004 Pearson Education, Inc.
Database Systems ER and EER to Relational Mapping Toqir Ahmad Rana Database Management Systems 1 Lecture 18.
Dr. Bernard Chen Ph.D. University of Central Arkansas
Chapter 91 ER & EER to Relational Mapping. Chapter 92 ER to Relational Mapping Step 1: For each regular entity type E in the ER schema, create a relation.
Copyright © 2011 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 9 Relational Database Design by ER- and EER-to-Relational Mapping.
Dr. Dang Tran Khanh M.eng. Tran Minh Quang
ER- and EER-to-Relational Mapping
Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe Slide 7- 1.
Dr. Bernard Chen Ph.D. University of Central Arkansas Fall 2008
Relational Database Design by ER- and EER-to-Relational Mapping
Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe Chapter 7 Relational Database Design by ER- to-Relational Mapping.
Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe Chapter 7 Relational Database Design by ER- Mapping.
Relational Database Design by ER- and EER-to- Relational Mapping
Copyright © 2011 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 9 Relational Database Design by ER- and EER-to- Relational Mapping.
METU Department of Computer Eng Ceng 302 Introduction to DBMS Relational Database Design by ER to Relational Mapping by Pinar Senkul resources: mostly.
Slide Chapter 7 Relational Database Design by ER- to-Relational Mapping.
Relational Database Design by ER- and EERR-to-Relational Mapping.
Chapter 6 Relational Database Design by ER- and EERR-to-Relational Mapping Copyright © 2004 Pearson Education, Inc.
Relational Database Design by ER- and EER-to-Relational Mapping The main reference of this presentation is the textbook and PPT from : Elmasri & Navathe,
Chapter 5 ER-to- Relational Mapping HUANG XUEHUA.
ER/EER to Relational Mapping Chapter 9. STEP 1 ENTITY TYPE E (non weak) -> NEW RELATION T RELATION T: – includes all simple attributes (non composite,
Kingdom of Saudi Arabia Ministry of Higher Education Al-Imam Muhammad Ibn Saud Islamic University College of Computer and Information Sciences The Relational.
ER-TO-RELATIONAL MODEL MAPPING CONTENT SOURCES: ELAMSARI AND NAVATHE, FUNDAMENTALS OF DATABASE MANAGEMENT SYSTEMS.
Copyright © 2016 Ramez Elmasri and Shamkant B. Navathe CHAPTER 9 Relational Database Design by ER- and EERR-to-Relational Mapping Slide 9- 1.
Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe Slide 7- 1.
ER- Relational Mapping (Based on Chapter 9 in Fundamentals of Database Systems by Elmasri and Navathe, Ed. 3)
Introduction to Database Systems
Lecture (8) 1. Relational Database Design by ER- and EERR- to-Relational Mapping 2.
Relational Database Design by ER- and EER-to-Relational Mapping
Relational Database Design by ER- and EER-to-Relational Mapping
Chapter 7 Relational Database Design by ER- and EERR-to-Relational Mapping.
Databases (CS507) CHAPTER 8
Relational Database Design by ER- and EER-to-Relational Mapping
Chapter 7 Relational Database Design by ER- and EERR-to-Relational Mapping Copyright © 2004 Pearson Education, Inc.
Chapter 7 Relational Database Design by ER- and EERR-to-Relational Mapping Copyright © 2004 Pearson Education, Inc.
Lecture # 21 Chapter # 7 Relational Database Design by ER- and EER-to-Relational Mapping Muhammad Emran Database Systems.
Relational Database Design by ER- and ERR-to-Relational Mapping
Relational Database Design by ER- and EER-to- Relational Mapping
Relational Database Design by ER- and EER-to- Relational Mapping
Enhanced Entity-Relationship (EER) Modeling
ER- and EER-to-Relational
Relational Database Design by ER- and EERR-to-Relational Mapping
Relational Database Design by ER-to-Relational Mapping
Chapter (9) ER and EER-to-Relational Mapping, and other Relational Languages Objectives How a relational database schema can be created from a conceptual.
9/5/2018.
Chapter (9) ER and EER-to-Relational Mapping, and other Relational Languages Objectives How a relational database schema can be created from a conceptual.
11/15/2018.
Chapter 8: Mapping a Conceptual Design into a Logical Design
Relational Database Design by ER- and EER-to-Relational Mapping
EER to Relational Mapping
Relational Database Design by ER- and EER-to- Relational Mapping
Relational Database Design by ER- and EERR-to-Relational Mapping
4/11/2019.
Relational Database Design by ER- and EER-to-Relational Mapping
Chapter (7) ER-to-Relational Mapping, and other Relational Languages
CS4222 Principles of Database System
7/19/2019.
Presentation transcript:

DatabaseIM ISU1 Chapter 7 ER- and EER-to-Relational Mapping Fundamentals of Database Systems

DatabaseIM ISU2 Chapter Outline  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.  Mapping EER Model Constructs to Relations  Step 8: Options for Mapping Specialization or Generalization.  Step 9: Mapping of Union Types (Categories).

DatabaseIM ISU3 ER-to-Relational Mapping  Algorithm  STEP 1: Regular entity type mapping »For each regular (strong) entity type E in the ER schema, create a relation R that includes all the simple attributes of E »Include only the simple component attributes of a composite attribute »Choose one of the key attributes of E as primary key for 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

DatabaseIM ISU4 ER-to-Relational Mapping (cont.) 

DatabaseIM ISU5 ER-to-Relational Mapping (cont.)

DatabaseIM ISU6 ER-to-Relational Mapping (cont.) multivalued attribute

DatabaseIM ISU7 ER-to-Relational Mapping (cont.)

DatabaseIM ISU8 ER-to-Relational Mapping (cont.)  STEP 2: Weak entity type mapping »For each weak entity type W 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 »Include as foreign key attributes of R the primary key attribute(s) of the relation(s) corresponding to E »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

DatabaseIM ISU9 ER-to-Relational Mapping (cont.)

DatabaseIM ISU10 ER-to-Relational Mapping (cont.)  STEP 3: Mapping 1:1 relationship »For each binary 1:1 relationship type R, identify the relations S and T that correspond to the entity types participating in R »Choose one of the relations—S, say—and include as 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 »Include all the simple attributes (or simple components of composite attributes) of the 1:1 relationship type R as attributes of S

DatabaseIM ISU11 ER-to-Relational Mapping (cont.) S T

DatabaseIM ISU12 ER-to-Relational Mapping (cont.)  STEP 4: Mapping 1:N relationship »For each regular binary 1:N relationship type R, identify the relation S that corresponds to 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 in R »Include any simple attributes (or simple components of composite attributes) of the 1:N relationship type as attributes of S

DatabaseIM ISU13 ER-to-Relational Mapping (cont.)

DatabaseIM ISU14 ER-to-Relational Mapping (cont.) S T

DatabaseIM ISU15 ER-to-Relational Mapping (cont.) S T

DatabaseIM ISU16 ER-to-Relational Mapping (cont.)  STEP 5: Mapping M:N relationship »For each binary M:N relationship type R, 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; their combination will form the primary key of S »Include any simple attributes of the M:N relationship type (or simple components of composite attributes) as attributes of S »Note: We cannot represent an M:N relationship type by a single foreign key attribute in one of the participating relations

DatabaseIM ISU17 ER-to-Relational Mapping (cont.)

DatabaseIM ISU18 ER-to-Relational Mapping (cont.)  STEP 6: Mapping multivalued attributes »For each multivalued attribute A, create a new relation R »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. »The primary key of R is the combination of A and K »If the multivalued attribute is composite, we include its simple components

DatabaseIM ISU19 ER-to-Relational Mapping (cont.)

DatabaseIM ISU20 ER-to-Relational Mapping (cont.)  STEP 7: Mapping n-ary relationship »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 »Include any simple attributes of the n-ary relationship type (or simple components of composite attributes) as attributes of S »The primary key of S is usually a combination of all the foreign keys

DatabaseIM ISU21 ER-to-Relational Mapping (cont.)

DatabaseIM ISU22 ER-to-Relational Mapping (cont.)  Summary ER-to-Relational Models ER Model Relational Model Entity type "Entity" relation 1:1 or 1:N relationship type Foreign 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 attribute Attribute Composite attributeSet of simple component attributes Multivalued attribute Relation and foreign key Value set Domain Key attribute Primary (or secondary) key

DatabaseIM ISU23 EER-to-Relational Mapping  Mapping of Specialization (or Generalization)  STEP 8: »Convert each specialization with m subclasses {S 1, S 2,..., S m } and (generalized) superclass C, where the attributes of C are {k, a 1,..., a n } and k is the (primary) key, into relation schemas using one of the four following options:

DatabaseIM ISU24 EER-to-Relational Mapping (cont.)  Option 8A: Multiple relations--Superclass and subclasses »Create a relation L for C with attributes Attrs(L) = {k, a 1,..., a n } and PK(L) = k. »Create a relation L i for each subclass S i, 1  i  m with the attributes Attrs(L i ) = {k}  {attributes of S i } and PK(L i ) = k. »Note: This option works for any constraints on the specialization: disjoint or overlapping, total or partial. But the constraint must hold for each L i.  (L i )   (L)

DatabaseIM ISU25 Example of Option 8A

DatabaseIM ISU26 EER-to-Relational Mapping (cont.)  Option 8B: Multiple relations--Subclasses only »Create a relation L i for each subclass S i, 1  i  m, with the attributes Attrs(L i ) = {attributes of S i }  {k, a 1,..., a n } and PK(L i ) = k. »Note: This option works well only when both the disjoint and total constraints hold. –If the specialization is not total, an entity that does not belong to any of the subclasses S i is lost. –If the specialization is not disjoint, an entity belonging to more than one subclass will have its inherited attributes from the superclass C stored redundantly in more than one L i

DatabaseIM ISU27 Example of Option 8B

DatabaseIM ISU28 EER-to-Relational Mapping (cont.)  Option 8C: Single relation with one type attribute »Create a single relation L with attributes Attrs(L) = {k, a 1,..., a n }  {attributes of S 1 } ...  {attributes of S m }  {t} and PK(L) = k. »Note: This option is for a specialization whose subclasses are disjoint, and t is a type (or discriminating) attribute that indicates the subclass to which each tuple belongs, if any. »Warning: This option has the potential for generating a large number of null values.

DatabaseIM ISU29 Example of Option 8C

DatabaseIM ISU30 EER-to-Relational Mapping (cont.)  Option 8D: Single relation with multiple type attributes »Create a single relation schema L with attributes Attrs(L) = {k, a 1,..., a n }  {attributes of S 1 } ...  {attributes of S m }  {t 1, t 2,..., t m } and PK(L) = k. »Note: This option is for a specialization whose subclasses are overlapping (but will also work for a disjoint specialization), and each t i, 1  i  m, is a Boolean attribute indicating whether a tuple belongs to subclass S i.

DatabaseIM ISU31 Example of Option 8D

DatabaseIM ISU32 EER-to-Relational Mapping (cont.)  After notes: »Options 8A and 8B can be called the multiple relation options, whereas options 8C and 8D can be called the single relation options.

DatabaseIM ISU33 EER-to-Relational Mapping (cont.)  Mapping of Shared Subclasses  A shared subclass is a subclass of several superclasses. These classes must all have the same key attribute  We can apply any of the options discussed in step 8 to a shared subclass, although usually option 8A is used.  Example »In Figure 7.6, options 8C and 8D are used for the shared subclass STUDENT_ASSISTANT in EMPLOYEE and STUDENT, respectively

DatabaseIM ISU34 EER-to-Relational Mapping (cont.)

DatabaseIM ISU35 EER-to-Relational Mapping (cont.)

DatabaseIM ISU36 EER-to-Relational Mapping (cont.)  Step 9: Mapping of Categories  A category is a subclass of the union of two or more superclasses that can have different keys because they can be of different entity types  For mapping a category whose defining superclasses have different keys »It is customary to specify a new key attribute, called a surrogate key

DatabaseIM ISU37 EER-to-Relational Mapping (cont.) »Create a relation schema corresponding to the category and include any attributes of the category in this relation »Add the surrogate key attribute as foreign key to each relation corresponding to a superclass of the category  Example »OWNER category shown in Figure 4.8, which is a subset of the union of three entity types PERSON, BANK, and COMPANY

DatabaseIM ISU38 EER-to-Relational Mapping (cont.)

DatabaseIM ISU39 EER-to-Relational Mapping (cont.)

DatabaseIM ISU40 EER-to-Relational Mapping (cont.)  For a category whose superclasses have the same key »The mapping process is similar but there is no need for a surrogate key  Example »VEHICLE category in Figure 4.8

DatabaseIM ISU41 EER-to-Relational Mapping (cont.)

DatabaseIM ISU42 EER-to-Relational Mapping (cont.)

DatabaseIM ISU43 Chapter Summary  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.  Mapping EER Model Constructs to Relations  Step 8: Options for Mapping Specialization or Generalization.  Step 9: Mapping of Union Types (Categories).