Presentation is loading. Please wait.

Presentation is loading. Please wait.

Database Design J.G. Zheng May 19 th 2008. 2 Overview Entity Relationship Modeling Data modeling using Entity Relationship Diagram (ERD) Transforming.

Similar presentations


Presentation on theme: "Database Design J.G. Zheng May 19 th 2008. 2 Overview Entity Relationship Modeling Data modeling using Entity Relationship Diagram (ERD) Transforming."— Presentation transcript:

1 Database Design J.G. Zheng May 19 th 2008

2 2 Overview Entity Relationship Modeling Data modeling using Entity Relationship Diagram (ERD) Transforming ERD into tables

3 3 Introduction Design is a process Analysis Requirements (user view) Conceptual modeling (ERD) (Logical) design Transforming ERD to tables and keys Physical design and implementation Using MS Access

4 4 Entity-Relationship Model A model to represent the real world Elements Entities Attributes Identifiers Relationships

5 5 Entity Anything in the real world Entity class (entity set) A set of things of the same type Entity instance An exact instance of an entity class ERD notation for entity A rectangular box Books

6 6 Attribute and Identifier Attribute Properties of entity Notation: an oval Identifier An attribute with unique value to identify each instance Title Books ISBN Price

7 7 Relationship Notation: a diamond Degree of relationship Unary (recursive) – only 1 entity Binary – 2 entities Ternary – 3 entities N-ary – more entities BooksPublishers publish

8 8 Types of Binary Relationship One-to-One (1:1) A single entity instance in one entity class is related to a single entity instance in another entity class Examples: Governors : States Students : PantherCards ER Notation (Crows foot) GovernorsStates govern

9 9 Types of Binary Relationship One-to-Many (1:N) A single entity instance in one entity class (parent) is related to multiple entity instances in another entity class (child) Examples Customers : Orders Students : Degrees ER Notation (Crows foot) BooksPublishers publish

10 10 Types of Binary Relationship Many-to-Many (N:M) Each entity instance in one entity class is related to multiple entity instances in another entity class; and vice versa Examples Books : Writers Customers : Banking Accounts ER Notation (Crows foot) BooksAuthors write

11 11 A Complete ER Example

12 12 ER Diagram Exercise Draw a ERD about movie data Lets only consider the following entities and their attributes Perfomers (Actors/Actresses): PerformerID, FirstName, LastName, Gender Movies: MovieID, Title, Maker, Year MovieMakers (companies): MakerID, Name Assumptions A movie one or more actors/actresses An actor/actress can be in multiple movies A movie is made by only one company

13 13 Transforming ER to Tables Guidelines to create tables Each entity becomes a relation (table) Attributes of the entity become fields of that table Identifier becomes primary key Rules to transform relationships Based on the type of the relationship One-to-One One-to-Many Many-to-Many

14 14 Transforming 1:1 Relationships One-to-One The key from one relation is placed in the other as a foreign key LockerDesc Location LockerID Locker LockerID EmpName EmpID Employee Foreign Key Primary Key

15 15 Transforming 1:1 Relationships EmpID LockerDesc Location LockerID Locker EmpName EmpID Employee Foreign Key Primary Key Usually, it does not matter which table receives the foreign key

16 16 Transforming 1:N Relationships One-to-Many The primary key from the One side is placed in the Many side as a foreign key The foreign key is always on the Many side Instructor InstructorID FirstName Office Department CourseSection CRN Semester CourseID Time TaughtBy

17 17 Transforming 1:N Relationships Another example DeptName Location DeptID Department Dept EmpName EmpID Employee Foreign Key Primary Key DepartmentEmployee has

18 18 Transforming N:M Relationships Many-to-Many There is no direct way to map many to many relationships To represent an M:N relationship, a table is created (intersection table) for the relationship OrdersParts OrderItems

19 19 Transforming N:M Example Many-to-Many is designed as two One-to-Many relationships Create an intersection table with the primary key from each original table as foreign keys The intersection table usually has a composite primary key OrderItems OrderNum PartNum NumOrdered Orders OrderNum OrderDate CustomerNum Parts PartNum Description Class Price 1:N N:1

20 20 M:N Relationship Exercise Performers Movies Cast PerformerId FirstName LastName Length Title Character MovieId Gender

21 21 Review Question Given the entities SUPPLIER and PRODUCT are one-to-many relationship, which of the following would represent the correct table design? A. PRODUCT (ProductID, Description, Cost) SUPPLIER (SupplierID, ContactName, PhoneNumber) FK ProductID PRODUCT B. PRODUCT (ProductID, Description, Cost, SupplierID) FK SupplierID SUPPLIER SUPPLIER (SupplierID, ContactName, PhoneNumber, ProductID) FK ProductID PRODUCT C. PRODUCT (ProductID, Description, Cost, ContactName) FK ContactName SUPPLIER SUPPLIER (SupplierID, ContactName, PhoneNumber) D. PRODUCT (ProductID, Description, Cost, SupplierID) FK SupplierID SUPPLIER SUPPLIER (SupplierID, ContactName, PhoneNumber)

22 22 Summary E-R diagram is used widely for database design Remember the rules to transform ERD to actual tables and relationships One to one One to many Many to many


Download ppt "Database Design J.G. Zheng May 19 th 2008. 2 Overview Entity Relationship Modeling Data modeling using Entity Relationship Diagram (ERD) Transforming."

Similar presentations


Ads by Google