Concepts of Database Management Seventh Edition Chapter 6 Database Design : ERD Model Objectives • Discuss the general process and goals of database design • Identify the different symbols used in ERD • Identify cardinality symbols to used for different entity relationship types • Create an entity-relationship (E-R) diagram to visually represent a database design 2 Objectives (continued) • Explain the physical-level design process • Discuss top-down and bottom-up approaches to database design and examine the advantages and disadvantages of both methods • Use a survey form to obtain information from users prior to beginning the database design process • Review existing documents to obtain information prior to beginning the database design 3 The Entity-Relationship Model • is modeling tool used to depict graphically a database design before it is actually implemented. • It has three basic components, namely, an Entity, Relationship and an Attribute. • And Relationship has Cardinality (as we will see more in a moment) 4 Introduction • Two-step process for database design • Information-level design: completed independently of any particular DBMS • Physical-level design: information-level design adapted for the specific DBMS that will be used – Must consider characteristics of the particular DBMS 5 Building Blocks of ERD Type English Grammar Equivalent Example Entity Proper Noun Student, Employee, Instructor, Courses, Room Relationship Verb has, teaches, belongs, handles Attribute Adjective Height, Age, Gender, Nationality, First name 6 ERD Popular Notation • Chen Notation • Crow’s Foot Notation 7 Chen Notation - Symbol Rectangle represents an Entity Diamond represents a Relationship 1 M Lines with labels represents Cardinality 8 Entity (Chen Notation) • is a real-world object distinguishable or unique from other objects. • An entity can be a concrete or physical object like employee, student, faculty, customer etc. Or it could also be conceptual or abstract like transaction, order, course, subjects etc. • It can be thought of as a noun like student, employee etc. • It is normally represented by a rectangle shape. 9 Database Background • Remember in Chapter 1 Entity could be a : (ex. Teacher, Student, Physician) Person Place Object (ex. School, Hotel, Store ) (ex. Mouse, Books, Bulding ) Event Idea or Concept (ex. Enroll, Withdraw, Order ) (ex. Courses, Account, Delivery ) 10 Entity - Example • For example in our Premiere Database the different Entities are the following: Customer Sales Rep Order Parts 11 Relationship • is a way of relating one entity to another. Entities can therefore participate in a relationship. • it is commonly thought as a verb connecting the entities or nouns. • It is normally represented by a diamond shape. 12 Relationship - Example • For example in our Premiere Database again we have this relationships among entities: Sales Rep represents Customer has Could be read as : A Sales Rep Represents a Customer. And a Customer has an Order. Order 13 Cardinality • Cardinality: number of items that must be included in a relationship – An entity in a relationship with minimum cardinality of zero plays an optional role in the relationship – An entity with a minimum cardinality of one plays a mandatory role in the relationship 14 Cardinality - Symbols 1 M One-is-to-many Relationship M N Many-to-many Relationship 15 Cardinality Symbols - Example 1 Sales Rep M represents Customer Could be read as : A Sales Rep could represent 1 or Many Customers. 16 Cardinality Symbols – Example (Cont’d) M Order N has Parts Could be read as : An Order could have many Parts (e.g. Products Ordered) and a Part could have many Orders. 17 Degree of Relationship • There are three Degree of Relationships in ERD notation, namely: – Unary – Binary – Ternary 18 Degree of Relationship (Cont’d) Unary Binary Ternary 19 Degree of Relationship (Cont’d) Manages Unary Employee makes Customer Orders Vendor Warehouse Binary Ternary supplies Part 20 Attribute • Refers to the characteristic or basic fact or field of an Entity or Relationship. • For example a Student entity could have the following attributes ID Number, Last Name, First Name, Address, Birth Date etc. • A relationship could also have an attribute for example an Entity name Student enrolls (relationship) to a Course/Program. Now, when you enroll you enroll on a certain date so you will have an attribute of Enrollment Date under Enroll relationship. • It is normally represented by an oval. 21 Attribute - Example Firstname Lastname RepNum Street City Sales Rep State Zip Rate Take note that a Primary Key is underlined. Commission 22 Attribute – More Example CustomerName Firstname CustomerNum Lastname RepNum Street Street 1 City Sales Rep M Customer represents City State State Zip Rate CreditLimit Zip Commission Balance 23 Crow’s Foot notation - Symbol Entity name Attribute 1 Attribute 2 Attribute 3 Attribute 4 24 Crow’s Foot notation - Example Entity Student StudentID Firstname Lastname Gender Program Attributes 25 Crow’s Foot notation - Keys Student StudentID (PK) Firstname Lastname Gender ProgramID (FK) PK – Primary Key FK – Foreign Key 26 Crow’s Foot Cardinality - Symbols One and only one included in the relationship Zero or many could be included in the relationship. This is optional mode. One or many could be included in the relationship. This is mandatory mode. 27 Crow’s Foot notation – with Cardinality Customer Rep Repnum (PK) Firstname Lastname Commission Rate Customernum(PK) Customername Street City State Zip Balance CreditLimit Repnum (FK) 28 Non-Graded Seatwork • Using Premier Database – Create a Chen notation on at least two tables that is not part of our example and tables that has relationship – Create a Crow’s Foot notation on at least two tables that is not part of our example and tables that has relationship 29 Graded Seatwork • Create both Chen and Crow’s foot notation on all tables and relationship – Alexamara Marina – Henry Books 30 End 31