database management cop4540, scs, fiu database modeling using the entity-relationship model (chapter...
TRANSCRIPT
Database ManagementCOP4540, 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.
Database ManagementCOP4540, SCS, FIU
Elements of ER Model
• Key elements:– Entities– Attributes– Relationships– Identifiers
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.
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
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)
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.
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
Database ManagementCOP4540, SCS, FIU
Basic E-R Notation
Entity
Weak Entity
Relationship
Identifying Relationship
Attribute
Multivalued Attribute
Derived Attribute
Database ManagementCOP4540, SCS, FIU
Basic E-R NotationRelationship degree
Unary Binary Ternary
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.
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.
Database ManagementCOP4540, SCS, FIU
Composite Attribute
Address
Street City State Zip
Database ManagementCOP4540, SCS, FIU
Entity with multivalued attribute (Skills) and derived attribute (Years_Employed)
EMPLOYEE
Employee_IDName Address
Skills
Date_Employed
Years_Employed
Database ManagementCOP4540, SCS, FIU
Simple and composite Key attributes
(a) Simple key attribute
STUDENT
SSN
Student_Name
Other_Attributes
Database ManagementCOP4540, SCS, FIU
Simple and composite Key attributes
(a) Composite key attribute
FLIGHT
Flight_ID
Flight_No Date Number_of_Passengers
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
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
Database ManagementCOP4540, SCS, FIU
How to Interpret this Model
BRANCHBranch_No Tel_No
Address
Street
City
ZipCode
Fax_NoTotal_Branch
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
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.
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.
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
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
… …
Database ManagementCOP4540, SCS, FIU
Relationships
• Degree of Relationship– Unary Relationship– Binary Relationship– Ternary Relationship
• Attributes of Relationship– Many to Many
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
Database ManagementCOP4540, SCS, FIU
Role Names
• Unary relationship: the same entity class participates more than once in different roles.
EMP SupervisesSupervisee
Supervisor 1
N
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
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
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
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
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
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.
Database ManagementCOP4540, SCS, FIU
Bars Beers
ThePrice
price
Prices
TheBar
TheBeer
BBP
N
1
N N
1 1
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.