Presentation is loading. Please wait.

Presentation is loading. Please wait.

Logical Database Design and Entity-Relationship Mapping “To Err is Human; to Forgive, Divine.” ~ Alexander Pope ~

Similar presentations


Presentation on theme: "Logical Database Design and Entity-Relationship Mapping “To Err is Human; to Forgive, Divine.” ~ Alexander Pope ~"— Presentation transcript:

1 Logical Database Design and Entity-Relationship Mapping “To Err is Human; to Forgive, Divine.” ~ Alexander Pope ~

2

3 What exactly is a Logical Model? A Blueprint of your database. It is DBMS independent, and does not rely on an specific product. It is a technical communications tool. Concepts from relational theory are re- introduced (PK, FK, Table, Column, data type) Any person knowledgeable in SQL should be able to read a logical model and create a real database implementation from it.

4 Concept Map: Conceptual vs. Logical CONCEPTUALLOGICAL ERDRelational Diagram EntityRelation (Table) AttributeColumn RelationshipForeign Key (FK) N/APK, Constraints Important: Rows (sample data) MUST be considered in the Logical Model !!!

5 Relational Notation is Simple Table or relation is a box. Name of relation is at the top. Columns / Attributes are placed below the relation name in the box. Primary Key columns are Underlined and labeled with PK Foreign Key columns are labeled with FK A PK/FK Relationship between tables are established with an arrow (  ), which always POINTS TO THE PRIMARY KEY of the relationship. SUID PK Lname Fname Ht Wt Students CardNo PK SUID FK CardType ExpDate CreditCards

6 Mapping Mapping is the process of transforming a conceptual model into a logical model.

7 Basic Attribute Mapping Table name is plural Use Naming conventions Assign data types PK for each table Break down composite into simple Set required to not null Set Unique and check constraints Conceptual Logical

8 Mapping 1-M Relationships FK goes on the many side If required on the one side (aka Weak Entity), then set the FK to not allow null Conceptual Logical

9 Mapping Multi-Valued Attributes Similar to 1-M: Place [m] attributes in new table. PK from original table is FK in the new table. Conceptual Logical

10 Mapping Multi-Valued Attributes Similar to 1-M: Place [m] attributes in new table. PK from original table is FK in the new table. Conceptual Logical

11 Mapping 1-1 Relationships Similar to 1-M: Since the FK goes to the optional side of the relationship, but the FK is set to PK. Conceptual Logical

12 Mapping M-M Relationships Make a “bridge table” place FKs in bridge table and set as composite PK Conceptual Logical

13 Mapping Weak Entities Make sure the foreign key does not allow null Conceptual Logical

14 Advanced Mapping Edge cases which are variations on the same themes. Examples provided for reference.

15 Ex: Mapping a Unary 1-M Relationship Conceptual Logical EmpID EName Phone HireDate Employee The FK inside the table forms the recursive relationship Manages EmpID PK EName Phone HireDate ManagerEmpID FK Employee

16 Ex: Mapping a Unary N-M Relationship Conceptual Logical ItemNo PK ItmName UnitCost Item Bridge Table with both FK’s relating back to the same table PK Contains ItemNo ItmName UnitCost Item ItemNo PK FK ComponentItemNo PK FK Qty Component

17 Ex: Mapping Sub/Super Type Conceptual Logical EmpNo EName HireDate Employee Discriminator HourlyRate EmpHourly AnnualRate StockOptns EmpSalary EmpNo PK EName HireDate EmpType Employee EmpNo PK FK HourlyRate EmpHourly EmpNo PK FK AnnualRate StockOptns EmpSalary

18 Logical Database Design and Entity-Relationship Mapping Questions?


Download ppt "Logical Database Design and Entity-Relationship Mapping “To Err is Human; to Forgive, Divine.” ~ Alexander Pope ~"

Similar presentations


Ads by Google