0% found this document useful (0 votes)
339 views

ER To Relational Mapping Algorithm

The algorithm for mapping an ER schema to a relational schema consists of 7 steps: 1. For each regular entity type, create a relation with its simple attributes and choose a primary key. 2. For each weak entity type, create a relation with its simple attributes and foreign keys to its owner entities. 3. For each 1:1 relationship type, include one relation's primary key as a foreign key in the other. 4. For each 1:N relationship type, include a foreign key from the N-side relation to the 1-side relation. 5. For each M:N relationship type, create a relation with foreign keys to the participating entity types.

Uploaded by

chindhuz
Copyright
© Attribution Non-Commercial (BY-NC)
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
339 views

ER To Relational Mapping Algorithm

The algorithm for mapping an ER schema to a relational schema consists of 7 steps: 1. For each regular entity type, create a relation with its simple attributes and choose a primary key. 2. For each weak entity type, create a relation with its simple attributes and foreign keys to its owner entities. 3. For each 1:1 relationship type, include one relation's primary key as a foreign key in the other. 4. For each 1:N relationship type, include a foreign key from the N-side relation to the 1-side relation. 5. For each M:N relationship type, create a relation with foreign keys to the participating entity types.

Uploaded by

chindhuz
Copyright
© Attribution Non-Commercial (BY-NC)
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 1

ER-to-Relational Mapping Algorithm We now describe the steps of an algorithm for ER-to-relational mapping.

STEP 1: 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.

STEP 2: 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); this takes care of the identifying relationship type of W. 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. STEP 3: 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. Choose one of the relations S, sayand 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. STEP 4: For each regular binary 1:N relationship type R, identify the relation S that represents 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; 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. Include any simple attributes (or simple components of composite attributes) of the 1:N relationship type as attributes of S. STEP 5: 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. Also include any simple attributes of the M:N relationship type (or simple components of composite attributes) as attributes of S. Notice that we cannot represent an M:N relationship type by a single foreign key attribute in one of the participating relationsas we did for 1:1 or 1:N relationship types because of the M:N cardinality ratio. STEP 6: For each multivalued attribute A, create a new relation R. This relation R will include an attribute corresponding to A, plus the primary key attribute Kas a foreign key in Rof 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 (Note 4). STEP 7: 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. Also 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 that reference the relations representing the participating entity types. However, if the cardinality constraints on any of the entity types E participating in R is 1, then the primary key of S should not include the foreign key attribute that references the relation E corresponding to E (see Section 4.7). This concludes the mapping procedure.

You might also like