Chapter -3- Data Modeling Using the Entity-Relationship Model

Slides:



Advertisements
Similar presentations
Data Modeling (CB 12) CPSC 356 Database Ellen Walker Hiram College (Includes figures from Database Systems by Connolly & Begg, © Addison Wesley 2002)
Advertisements

Entity Relationship (ER) Modeling
Entity Relationship (ER) Modeling
Chapter 4 ENTITY-RELATIONSHIP MODELLING.
Database Management COP4540, SCS, FIU Database Modeling Using the Entity-Relationship Model (Chapter 3)
Entity Relationship Model Chapter 6. Basic Elements of E-R Model Entity Object of the real world that stores data. Eg. Customer, State, Project, Supplier,
Chapter 3 Data Modeling Using the Entity- Relationship (ER) Model Dr. Bernard Chen Ph.D. University of Central Arkansas.
Data Modeling Using the Entity-Relationship Model
Chapter 3 Relational Model Chapter 4 in Textbook.
Data Modeling Using the Entity-Relationship Model
Chapter 3 Data Modeling Using the Entity-Relationship (ER) Model.
Kingdom of Saudi Arabia Ministry of Higher Education Al-Imam Muhammad Ibn Saud Islamic University College of Computer and Information Sciences Data Modeling.
Chapter 2 Entity-Relationship Model Chapter 11 & 12 in Textbook.
CONCEPTS OF E-R MODEL. CONTENTS Entity Attributes Data Value Entity Types Types of Entity Types Relationships Relationship Constraints.
Chapter -3- Data Modeling Using the Entity- Relationship Model
Dr. Mohamed Osman Hegaz1 Conceptual data base design: The conceptual models: The Entity Relationship Model.
Entity-Relationship Model
Chapter 5 Entity Relationship (ER) Modelling
Chapter 3 Data Modeling Using the Entity- Relationship (ER) Model Dr. Bernard Chen Ph.D. University of Central Arkansas Fall 2008.
Chapter 4 Entity Relationship (ER) Modeling.  ER model forms the basis of an ER diagram  ERD represents conceptual database as viewed by end user 
Chapter 12 Entity-Relationship Modeling Pearson Education © 2009.
Initial Design of Entity Types for the COMPANY Database Schema Based on the requirements, we can identify four initial entity types in the COMPANY database:
Data modeling using the entity-relationship model Chapter 3 Objectives How entities, tuples, attributes and relationships among entities are represented.
Database Management Systems MIT Lesson 02 – Database Design (Entity Relationship Diagram) By S. Sabraz Nawaz.
Data Modeling Using the Entity-Relationship (ER) Data Model (Based on Chapter 3 in Fundamentals of Database Systems by Elmasri and Navathe, Ed. 3)
Data Modelling Using Entity-Relationship (ER) Model
DatabaseIM ISU1 Fundamentals of Database Systems Chapter 3 Data Modeling Using Entity-Relationship Model.
Data Modeling Using the Entity-Relationship (ER) Data Model.
Chapter 3: Data Modeling Using the Entity-Relationship (ER) Data Model
Chapter 3: Modeling Data in the Organization. Business Rules Statements that define or constrain some aspect of the business Assert business structure.
Database Designsemester Slide 1 Database Design Lecture 7 Entity-relationship modeling Text , 7.1.
ENTITY-RELATIONSHIP MODELLING. Objectives: How to use Entity–Relationship (ER) modelling in database design. Basic concepts associated with ER model.
Entity Relationship (E-R) Model
Data Modeling Using the Entity- Relationship (ER) Model
Comp 1100 Entity-Relationship (ER) Model
Entity-Relationship Model
Chapter 3 Data Modeling Using the Entity-Relationship Model
CS4222 Principles of Database System
Data Modeling Using the Entity- Relationship (ER) Model
Entity- Relationship (ER) Model
Chapter # 3 Data Modeling Using the Entity-Relationship (ER) Model
ER model Ashima Wadhwa.
COP Introduction to Database Structures
Entity-Relationship Model
TMC2034 Database Concept and Design
Entity Relationship Model
Entity-Relationship Model
Tables and Their Characteristics
Chapter -3- Data Modeling Using the Entity-Relationship Model
Entity-Relationship Modelling
Entity-Relationship Modeling
Lecture3: Data Modeling Using the Entity-Relationship Model.
بسم الله الرحمن الرحيم.
Entity Relationship Diagrams
Chapter 4+17 The Relational Model Pearson Education © 2014.
Entity-Relationship Modeling
Database Systems: Design, Implementation, and Management Tenth Edition
Chapter Entity-Relationship Modeling & Enhanced Entity- Relationship Modeling.
Entity-Relationship Modelling
Database Modeling using Entity Relationship Model (E-R Model)
Review of Week 1 Database DBMS File systems vs. database systems
Conceptual Data Modeling Using Entities & Relationships
Chapter 4 Entity Relationship (ER) Modeling
Chapter Entity-Relationship Modeling & Enhanced Entity- Relationship Modeling.
Entity-Relationship Diagram (ERD)
Mapping an ERD to a Relational Database
Entity Relation Model Tingting Zhang.
ER MODELING Instructor: SAMIA ARSHAD
Chapter # 4 Entity Relationship (ER) Modeling.
Mapping an ERD to a Relational Database
Presentation transcript:

Chapter -3- Data Modeling Using the Entity-Relationship Model Database Design Chapter -3- Data Modeling Using the Entity-Relationship Model References: Prof. Mona Mursi Lecture notes

Database Design Steps in building a database for an application: 1. Understand real-world domain being captured 2. Specify it using a database conceptual model (E/R,OO) 3. Translate specification to model of DBMS (relational) 4. Create schema using DBMS commands (DDL) 5. Load data (DML) Real-world domain Conceptual model DBMS data model Create Schema (DDL) Load data (DML)

Entity-Relationship Model (E/R) The Entity-Relationship model (ER) is a high-level description of the structure of the DB The Entity-Relationship Diagram (ERD) is a graphical model for representing the conceptual model for the data A E/R models the DB using three element types: - Entities - Attributes - Relationships

ERD Example name dean of number operate DOB assigned advise teach SCHOOL 1 1 name (0,1) dean of PROFESSOR 1 (1,1) number M 1 operate DOB 1 (0,4) 1 (0,1) assigned M (0,*) (0,*) 1 advise teach chairs DEPARTMENT 1 (1,1) 1 1 (1,*) offer (0,1) M M M (1,1) N M M 1 enroll CLASS generate COURSE STUDENT (0,*) (0,*) (0,*) (1,1) (1,1) M code hrs has

Entities & Attributes Entity: The basic object that the ER model represent is an entity which is a thing in the real world. Physical existence : like a person, employee Conceptual existence : like job, course Attribute: The particular properties that describes the entity. e.g.: an employee is described by : name, age, address, salary , job. * An entity will have a value for each of its attributes.

Entities & Attributes STUDENT COURSE STUDENT COURSE name DOB name St_no Tel_no hours number STUDENT COURSE

Attribute Types Composite v Simple Composite attributes: divided into smaller subparts e.g. name divided into first, initial ,last. Simple attributes: attributes that are not divisible e.g. salary. Name FirstName MiddleName LastName SALARY initial FName LName Area_cd DOB name no St_no Tel_no EX STUDENT

Single Valued v Multivalued Single value : most attributes are of this type. E.g. age Multivalued: set of values for the same entity. E.g. car colors, previous degrees. Color initial FName LName Area_cd DOB name no St_no Tel_no EX Mobile STUDENT

Stored v Derived Attributes Stored attributes: regular attributes. Derived attributes: are calculated from attributes of one or several related entities. E.g. calculating the salary from the hours worked and number of hours. BDate Age name DOB St_no Tel_no age STUDENT

More Attribute Types Null values: some entities may not have an applicable values for an attribute => a special value is created called Null. E.g. in the employee information the field of mobile number can have a null value because some employees do not have mobile phones. Complex attributes: composite and multivalued attributes can be nested. E.g. a person may have many certificate, each certificate has the subfields name, year and level. Therefore it is represented this way : {certificate (name, year, level)} {} represents multivalued () represents composite attributes.

Entities Entity Type: is a collection of occurrences of entities that have common properties. E.g. employees. Entity Instance: is a single occurrence of an entity type. E.g. the student named Nora Alghtany. Entity Set: a collection of all entities of a particular entity type in the database at any point in time. E.g. Employee . Employee refers to both the type of entity + the current set of all employees entity in the database.

Key Attributes of an Entity Type Key attribute: is a key that identifies each entity uniquely, and has a distinct value . E.g. the name attribute in the company entity is unique. Candidate Key (CK): a set of attributes that uniquely identify an instance of an entity. E.g. Students can be identified by SSN or ID. Composite Key: is a key made from more than one attribute. E.g. the flight can be uniquely identified by flight number and flight date. Alternate Key (AK): is a candidate key that is NOT selected to be the primary key.

Keys Example ELEMENT(symbol, name, atomic_no)

Composite Key in ERD CLASS FLIGHT name Section_no hours crs_code FlightID FlightNo Date FLIGHT

Primary Key Attribute (PK) Can be a single attribute or composite attribute. Can be called identifier. Weak entity may have no key. Has the following criteria: Should not change its value Not null Avoid intelligent keys.

Choice of PK STUDENT Choice of Primary Key (PK) is based on: Attribute length Number of attributes required Certainty of uniqueness initial FName LName Area_cd DOB name no St_no Tel_no EX STUDENT age

Strong & Weak Entity Types A strong entity type is NOT existence-dependent on some other entity type. It has a PK. A weak entity type is an entity type that is existence-dependent on some other entity type. It does not have a PK.

Weak Entity Type The existence of a weak entity type depends on the existence of a strong entity set; it must relate to the strong entity type via a relationship type called identifying relationship. The PK of a weak entity set is formed by the PK of its strong entity type, plus a weak entity type discriminator attribute (Partial key). LName FName dep_no NAME emp_no DOB has EMPLOYEE DEPENDENT

Values Sets (Domains) of Attributes Domain: the set of values that might be assigned to the attribute for each individual entity. e.g. ages of employees can be ( 16-70) e.g. names is a set of alphabetical characters only Not displayed in ER diagram.

Relationships study STUDENT COURSE Whenever an attribute of one entity refers to another entity type, some relationship exists. In ER Model these references should not be represented as attributes but as relationships. Relationships may have attributes. study STUDENT COURSE

Degree of relationship Degree of relationship: number of entities participating in the relation. More than one relationship can exist with the same entity types. E.g. an employee and department may have the relationships: works for or manages. Start_Date manages DEPARTMENT EMPLOYEE WORKS_FOR allocated

Degree of Relationship Type Degree of relationship refers to number of participating entity types in a relationship. A relationship of degree one (1 entity types) is unary (recursive). A relationship of degree two (2 entity types) are binary. A relationship of degree three (3 entity types) are ternary.

Recursive Relationship Recursive Relationship -A Relationship can relate two entities of the same entity type . - Has the degree 1 (0,M) 1 SUPERVISION EMPLOYEE (1,1) M

Degree of Relationship Type A relationship of degree two (2 entity types) are binary. study STUDENT COURSE

Degree of Relationship Type A relationship of degree three (3 entity types) are ternary. (e.g.registration of a student in a course by a staff) register STUDENT COURSE STAFF

Cardinalities Cardinality ratio expresses the number of relationships an entity can participate in. Most useful in describing binary relationship types. For a binary relationship type the mapping cardinality must be one of the following types: – One to one (1:1) – One to many(1:M) – Many to one (M:1) – Many to many (M:N)

One-To-One Relationship 1 1 chairs PROFESSOR DEPARTMENT 0 , 1 1 , 1 A professor chairs at most one department; and a department is chaired by only one professor so it is One to one (1:1)

One-To-Many Relationship 1 M teach PROFESSOR COURSE 1 , M 1 , 1 A course is taught by at most one professor; a professor teaches many courses so it is One to many(1:M) .

One-To-Many Relationship 1 require CLASS ROOM 1 , 1 1 , M A class requires one room; while a room can be scheduled for many classes

Many-To-Many Relationship enroll CLASS STUDENT 1 : M 1 : M A class enrolls many students; and each student is enrolled in many classes.

Example: 1 1 manage STAFF BRANCH (0,1) (1,1)

Example: 1 M oversee STAFF PROPERTY (0,1) (0,M)

Example M N advertise NEWSPAPER PROPERTY (0,*) (0,*)

Participation Constraints Participation constraints determine whether all or only some entities participate in a relationship. Two types of participation: - Mandatory (total) - Optional (partial)

Participation Constraints Mandatory (total) (1:*): if an entity’s existence requires the existence of an associated entity in a particular relationship (existence-dependent). (e.g. EMPLOTEE works_for PROJECT) EMPLOYEEis a total participator in the relation A weak entity always has a mandatory participation constraints but the opposite not always true. (1,M) ( 1 , M) EMPLOYEE Works_for PROJECT M N

Participation Constraints Optional (partial) (0:*): if an entity’s existence does not require a corresponding entity in a particular relationship. (Not existence-dependent) (e.g. EMPLOYEE mange DEPARTMENT) EMPLOYEEis a partial participator in the relation (0 ,1) ( 1 , 1) mange EMPLOYEE DEPARTMENT 1 1

Multivalued Attributes Skillname Name Name EMPLOYEE EMPLOYEE SKILL has Skill Enum Enum SkillCode HowAcquired It is desirable to decompose multivalued attribute to a separate entity. It might be a 1:N or M:N relationship.

Summary of ERD notations ATTRIBUTE ENTITY KEY ATTRIBUTE WEAK ENTITY MULTI-VALUED RELATIONSHIP COMPOSITE IDENTIFYING RELATIONSHIP DERIVED