Database Management COP4540, SCS, FIU Database Modeling Using the Entity-Relationship Model (Chapter...

35
Database Management COP4540, SCS, FIU Database Modeling Using the Entity-Relationship Model (Chapter 3)

Transcript of Database Management COP4540, SCS, FIU Database Modeling Using the Entity-Relationship Model (Chapter...

Page 1: Database Management COP4540, SCS, FIU Database Modeling Using the Entity-Relationship Model (Chapter 3)

Database ManagementCOP4540, SCS, FIU

Database Modeling Using the Entity-Relationship Model

(Chapter 3)

Page 2: Database Management COP4540, SCS, FIU Database Modeling Using the Entity-Relationship Model (Chapter 3)

Database ManagementCOP4540, SCS, FIU

Entity-Relationship Model

• E-R model was introduced by Peter Chen in 1976

• It is a graphical approach to database modeling.

• It describes data as entities, relationships and attributes.

Page 3: Database Management COP4540, SCS, FIU Database Modeling Using the Entity-Relationship Model (Chapter 3)

Database ManagementCOP4540, SCS, FIU

Elements of ER Model

• Key elements:– Entities– Attributes– Relationships– Identifiers

Page 4: Database Management COP4540, SCS, FIU Database Modeling Using the Entity-Relationship Model (Chapter 3)

Database ManagementCOP4540, SCS, FIU

Entities• An entity is the basic object that the E-R

model represents

• An entity is something that can be identified in real world.

• Examples– Peter Johns, MIS, 12345– May Carson, CS, 67890– Dee Conway, 1134, CS, Prof.

• Entities of a given type are grouped into entity classes.

Page 5: Database Management COP4540, SCS, FIU Database Modeling Using the Entity-Relationship Model (Chapter 3)

Database ManagementCOP4540, SCS, FIU

Entities (2)

Name Major Year ID

Peter Johns MIS 2 12345May Carson CS 1 67890

… … … …

STUDENT

Name StaffID Dept Post

Dee Conway CS Prof

… … … …

FACULTY

Ent

ity

Cla

ssE

ntity Instances

Page 6: Database Management COP4540, SCS, FIU Database Modeling Using the Entity-Relationship Model (Chapter 3)

Database ManagementCOP4540, SCS, FIU

Attributes

• Entities have attributes that describe the entity’s characteristics.

• Types of attributes: single-valued, multi-valued, composite. Example are:

Single-value: “Year 2”

Multi-valued: {MIS, Marketing}

Composite: (FirstName, LastName)

Page 7: Database Management COP4540, SCS, FIU Database Modeling Using the Entity-Relationship Model (Chapter 3)

Database ManagementCOP4540, SCS, FIU

Relationships

• A relationship indicated how one or more entity classes interact with one and another.

• Each entity plays a role in a relationship.

• Degree of the relationship: number of entities in a relationship.

• Understanding the relationship is important because it will affect how the database is constructed and used.

Page 8: Database Management COP4540, SCS, FIU Database Modeling Using the Entity-Relationship Model (Chapter 3)

Database ManagementCOP4540, SCS, FIU

E-R Concepts

• entity type = entity class = entity

• entity instance = entity occurrence = record

• entity type: a set of objects in the real world with the same properties (not the same values) with a physical or conceptual existence

• entity instance: each entity has its own values for each attribute

Page 9: Database Management COP4540, SCS, FIU Database Modeling Using the Entity-Relationship Model (Chapter 3)

Database ManagementCOP4540, SCS, FIU

Basic E-R Notation

Entity

Weak Entity

Relationship

Identifying Relationship

Attribute

Multivalued Attribute

Derived Attribute

Page 10: Database Management COP4540, SCS, FIU Database Modeling Using the Entity-Relationship Model (Chapter 3)

Database ManagementCOP4540, SCS, FIU

Basic E-R NotationRelationship degree

Unary Binary Ternary

Page 11: Database Management COP4540, SCS, FIU Database Modeling Using the Entity-Relationship Model (Chapter 3)

Database ManagementCOP4540, SCS, FIU

E-R Model Constructs

• Strong versus Weak Entity Type– Independent versus dependent entity– Identifying owner– Identifying relationship– Weak entity identifier is its partial identifier

combined with that of its owner.

Page 12: Database Management COP4540, SCS, FIU Database Modeling Using the Entity-Relationship Model (Chapter 3)

Database ManagementCOP4540, SCS, FIU

E-R Model Constructs

• Attribute - property or characteristic of an entity type

• Simple versus Composite Attribute

• Single-valued versus Multivalued Attribute

• Stored versus Derived Attributes.

Page 13: Database Management COP4540, SCS, FIU Database Modeling Using the Entity-Relationship Model (Chapter 3)

Database ManagementCOP4540, SCS, FIU

Composite Attribute

Address

Street City State Zip

Page 14: Database Management COP4540, SCS, FIU Database Modeling Using the Entity-Relationship Model (Chapter 3)

Database ManagementCOP4540, SCS, FIU

Entity with multivalued attribute (Skills) and derived attribute (Years_Employed)

EMPLOYEE

Employee_IDName Address

Skills

Date_Employed

Years_Employed

Page 15: Database Management COP4540, SCS, FIU Database Modeling Using the Entity-Relationship Model (Chapter 3)

Database ManagementCOP4540, SCS, FIU

Simple and composite Key attributes

(a) Simple key attribute

STUDENT

SSN

Student_Name

Other_Attributes

Page 16: Database Management COP4540, SCS, FIU Database Modeling Using the Entity-Relationship Model (Chapter 3)

Database ManagementCOP4540, SCS, FIU

Simple and composite Key attributes

(a) Composite key attribute

FLIGHT

Flight_ID

Flight_No Date Number_of_Passengers

Page 17: Database Management COP4540, SCS, FIU Database Modeling Using the Entity-Relationship Model (Chapter 3)

Database ManagementCOP4540, SCS, FIU

Stored vs Derived Attributes

Derived attribute: the value of an attribute is derived fromsomething else

STUDENT

Name SSN

FName LName

Tel

DOB

Age

Page 18: Database Management COP4540, SCS, FIU Database Modeling Using the Entity-Relationship Model (Chapter 3)

Database ManagementCOP4540, SCS, FIU

Derived Attributes

• Example 1: Age = today date - DOB

• Example 2: total number of staff can be calculated by counting the total number of staff entity instances.

• Example 3: deposit = 2 * rent

Page 19: Database Management COP4540, SCS, FIU Database Modeling Using the Entity-Relationship Model (Chapter 3)

Database ManagementCOP4540, SCS, FIU

How to Interpret this Model

BRANCHBranch_No Tel_No

Address

Street

City

ZipCode

Fax_NoTotal_Branch

Page 20: Database Management COP4540, SCS, FIU Database Modeling Using the Entity-Relationship Model (Chapter 3)

Database ManagementCOP4540, SCS, FIU

E-R Model Constructs

• Identifier or Key - An attribute (or combination of attributes) that uniquely identifies individual instances of an entity type.

• Simple Key versus Composite Key

• Candidate Key

Page 21: Database Management COP4540, SCS, FIU Database Modeling Using the Entity-Relationship Model (Chapter 3)

Database ManagementCOP4540, SCS, FIU

E-R Model Constructs

• Criteria for selecting Identifiers– Will not change value– Will not be null– No intelligent identifiers (containing e.g.

locations or people that might change)– Substitute new, simple keys for long, composite

key.

Page 22: Database Management COP4540, SCS, FIU Database Modeling Using the Entity-Relationship Model (Chapter 3)

Database ManagementCOP4540, SCS, FIU

Relationships

• Definition: a meaningful association among entity classes.

• “Meaningful” implies that the relationship allows us to answer questions that could not be answered given only the entity classes.

• In general, any number of entity classes may participate in a relationship.

Page 23: Database Management COP4540, SCS, FIU Database Modeling Using the Entity-Relationship Model (Chapter 3)

Database ManagementCOP4540, SCS, FIU

Relationships

• Relationship type versus Instance

• Degree of Relationship - number of entity types that participate in it

• A relationship is represented by a diamond in the diagram with lines linking to the corresponding entity classes.

Professors

name

teaching Courses

CourseId

Page 24: Database Management COP4540, SCS, FIU Database Modeling Using the Entity-Relationship Model (Chapter 3)

Database ManagementCOP4540, SCS, FIU

Relationship Set

• Think of the value of relationship set as a table– One column for each of the connected entity sets.– One row for each list of entities, one from each set,

which is connected by the relationship.

Professors Courses

Holmes COP3337

Barton COP4610

Milani COP4010

… …

Page 25: Database Management COP4540, SCS, FIU Database Modeling Using the Entity-Relationship Model (Chapter 3)

Database ManagementCOP4540, SCS, FIU

Relationships

• Degree of Relationship– Unary Relationship– Binary Relationship– Ternary Relationship

• Attributes of Relationship– Many to Many

Page 26: Database Management COP4540, SCS, FIU Database Modeling Using the Entity-Relationship Model (Chapter 3)

Database ManagementCOP4540, SCS, FIU

Relationships of different degrees

(a) Unary relationships

One-to-one

PERSON Is_married_to

1

1

EMPLOYEE Manages

N

1

One-to-many

Page 27: Database Management COP4540, SCS, FIU Database Modeling Using the Entity-Relationship Model (Chapter 3)

Database ManagementCOP4540, SCS, FIU

Role Names

• Unary relationship: the same entity class participates more than once in different roles.

EMP SupervisesSupervisee

Supervisor 1

N

Page 28: Database Management COP4540, SCS, FIU Database Modeling Using the Entity-Relationship Model (Chapter 3)

Database ManagementCOP4540, SCS, FIU

(b) Binary relationships

EMPLOYEE PARKING PLACEAssigned1 1

One-to-one

PRODUCT LINE PRODUCTContains1 N

One-to-many

STUDENT COURSERegistersM N

Many-to-many

Page 29: Database Management COP4540, SCS, FIU Database Modeling Using the Entity-Relationship Model (Chapter 3)

Database ManagementCOP4540, SCS, FIU

Role Names

• Role names may also be used when two entity classes are associated through more than one relationships

EMP DEPT

Works_in

Managesmanager

memberof staff

N 1

1 1

Page 30: Database Management COP4540, SCS, FIU Database Modeling Using the Entity-Relationship Model (Chapter 3)

Database ManagementCOP4540, SCS, FIU

Multiway relationship

Usually binary relationships (connecting two E.S.) suffice.– However, there are some cases where three or

more E.S. must be connected by one relationship.

– Example: relationship among students, courses, TA's.

Students Courses TAstaking

assisting

M N

N1

Page 31: Database Management COP4540, SCS, FIU Database Modeling Using the Entity-Relationship Model (Chapter 3)

Database ManagementCOP4540, SCS, FIU

Multiway relationship– What if students are divided into sections, each

headed by a TA?• A student would be related to only one of the TA's

for the course. Which one?

– Need a 3-way relationship to tell.

Students Courses

TAs

Enrolls

1

M N

Page 32: Database Management COP4540, SCS, FIU Database Modeling Using the Entity-Relationship Model (Chapter 3)

Database ManagementCOP4540, SCS, FIU

Attributes on Relationships

Bars Beers

sells

price

Because the price jointly depends on beer and bar,it is actually a shorthand for 3-way relationship

Bars Beers

sells

price

Prices

Page 33: Database Management COP4540, SCS, FIU Database Modeling Using the Entity-Relationship Model (Chapter 3)

Database ManagementCOP4540, SCS, FIU

Converting multiway to 2-way

• Any relationship with more than two E.S. can be converted to a collection binary many-to-one relationships without losing any information.

• Steps:– Create a new connecting entity set.– Introduce many-to-one relationships from the

connecting entity set to each of the entity sets (or roles) involved.

Page 34: Database Management COP4540, SCS, FIU Database Modeling Using the Entity-Relationship Model (Chapter 3)

Database ManagementCOP4540, SCS, FIU

Bars Beers

ThePrice

price

Prices

TheBar

TheBeer

BBP

N

1

N N

1 1

Page 35: Database Management COP4540, SCS, FIU Database Modeling Using the Entity-Relationship Model (Chapter 3)

Database ManagementCOP4540, SCS, FIU

4-nary Relationship

SOLICITOR

BUYERFINANCIAL_INSTITUTION

BID

Arranges

A buyer, advised by a solicitor, and supported by a financialinstitution, places a bid for a property.A simultaneous relationship among four instances.