Download presentation
Presentation is loading. Please wait.
1
Mapping from E-R Model to Relational Model Yong Choi School of Business CSUB
2
Objectives of logical design... Translate the conceptual design into a logical database design that can be implemented on a chosen DBMS Input: conceptual model (ERD) Output: relational schema, normalized relations Resulting database must meet user needs for: Optimal data sharing Ease of access Flexibility
3
Why do I need to know this? CASE tools can perform many of the transformation steps automatically, but.. Often CASE tools cannot model complexity of data and relationship (Ternary relationships, supertype/subtypes, i.e..) You must be able to perform a quality check on CASE tool results * Mapping a conceptual model to a relational schema is a straight-forward process…
4
Basics * A conceptual model does not include FK information * An entity turns into a table. Each attribute turns into a column in the table. The identifier of the entity turns into a PK of the table. There is no such thing as a multi-valued attribute (phone #) in a relational database. If you have a multi-valued attribute, take the attribute and turn it into a new entity of its own thru the normalization process (see later slide..).
5
Some rules... * Remember! The Relational DB Model does not like any type of redundancy. Every table must have a unique name. Attributes in tables must have unique names. Every attribute value is atomic. Done by normalization…. The order of the columns is irrelevant. The order of the rows is irrelevant.
6
The key... Relational modeling uses primary keys and foreign keys to maintain relationships Primary keys are typically the unique identifier noted on the conceptual model Foreign keys are the PK of another entity to which an entity has a relationship See the class web for “PK as FK” & “Referential integrity” Composite keys are primary keys that are made of more than one attribute Weak entities Associative (Bridge) entities (M:N relationship)
7
Constraints… Entity integrity constraints A PK attribute must not be null. Referential integrity constraints matching of primary and foreign keys
8
Mapping an entity into a relation An Entity name: Employee Attributes: Emp_ID, Emp_Lname, Emp_Fname, Salary Identifier: Emp_ID Emp_Id Emp_LnameEmp_FnameSalary Employee
9
Mapping an entity into a relation Movies titleyear length filmType titleyearlengthfilmType Star Wars Mighty Ducks Wayne’s World 1977 1991 1992 124 104 95 color Movies
10
Mapping binary relationships One-to-one: PK on the mandatory side becomes a FK on the optional side one-to-one mandatory relationship Restaurant DB: BillingAddress and Customer One-to-many: PK on the one side becomes a FK on the many side Many-to-many - create a new relation (bridge entity) with the PKs of the two entities as its composite PK
11
Mapping a 1:1 relationship Nurse: Nurse_ID, Name, Date_of_Birth Care Center Center_Name, Location, Date_Assigned
12
Mapping a 1:1 relationship FK: Nurse_ID
13
Mapping a 1:M relationship Customer: Customer_ID, Customer_Name, Customer_Address Order: Order_ID, Order_Date
14
Mapping a 1:M relationship FK
15
Example M:N Relationship
16
Converting M:N Relationship to Two 1:M Relationships
17
Mapping an M:N relationship WH_IDWH_NameArea P_IDP_NamePrice WH_IDP_IDQuantity Warehouse StockInfo Product A component of composite PK is a FK of other relations
18
Mapping a bridge entity with a its own identifier
19
Mapping composite and Multi-valued attributes to relations Composite attributes: use only their simple, component attributes – divide into atomic and separate attribute. Multi-valued attributes: become a separate relation with a FK taken from the superior entity.
20
Mapping composite attributes to relations Composite attribute
21
Mapping a composite attribute
22
Mapping a multi-valued attribute Employee (SSN, Name) Phone (SSN, Phone#) Employee Phone# NameSSN Employee SSNName E101Johnson E102Smith E103Conley E104Roberts Phone SSNPhone# E101312 … E102708 … E102312 … E104603 …
23
Mapping a weak entity Becomes a separate relation with a FK taken from the superior entity Primary key composed of: Partial identifier of weak entity Primary key of identifying relation
24
Mapping a weak entity
25
Emp_IDEmp_name Employee Dep_SS_NoEmp_IDLnameFnameDOBGender Dependent NOTE: The FK of DEPENDENT should NOT allow null value if DEPENDENT is a weak entity
26
Mapping 1:M recursive (or unary) relationships
27
Emp_IDEmp_NameEmp_AddressManager_ID Employee FK Manager_ID references Emp_ID
28
Mapping M:N recursive (or unary) relationships In manufacturing assembly line, several items consist of multiple items as components. One item can be used to create other items. Associations among items are M:N. the associations among items are M:N. That is, there is a M:N unary relationship.
29
Mapping M:N recursive (or unary) relationships (a) Bill-of-materials relationships (M:N) (b) ITEM and COMPONENT relations Has_components Used_by
30
Mapping a ternary relationship
32
Mapping Supertype/subtype relationships Create a separate relation for the supertype and each of the subtypes Assign common attributes to supertype Assign PK and unique attributes to each subtype Assign an attribute of the supertype to act as subtype discriminator
33
Mapping Supertype/subtype relationships Sub symbol
34
Mapping Supertype/subtype relationships
Similar presentations
© 2024 SlidePlayer.com Inc.
All rights reserved.