0% found this document useful (0 votes)
41 views44 pages

Chapter 6: ER - Entity Relationship Diagram

Here are some best practices for ER design: - Model real world concepts as entity sets unless it is more natural as an attribute - Use relationship sets to model actions/associations between entities - Keep relationships binary unless a relationship is naturally n-ary - Identify weak entities that depend on a strong/identifying relationship - Use generalization when there is an "is-a" relationship between entities - Apply constraints like cardinality, participation, disjointness appropriately - Choose primary keys that uniquely identify each entity occurrence - Provide documentation of design decisions and assumptions made

Uploaded by

Ruman Mahmood
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
41 views44 pages

Chapter 6: ER - Entity Relationship Diagram

Here are some best practices for ER design: - Model real world concepts as entity sets unless it is more natural as an attribute - Use relationship sets to model actions/associations between entities - Keep relationships binary unless a relationship is naturally n-ary - Identify weak entities that depend on a strong/identifying relationship - Use generalization when there is an "is-a" relationship between entities - Apply constraints like cardinality, participation, disjointness appropriately - Choose primary keys that uniquely identify each entity occurrence - Provide documentation of design decisions and assumptions made

Uploaded by

Ruman Mahmood
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
You are on page 1/ 44

Chapter 6: ER – Entity

Relationship Diagram
 Major components of ER diagram
 Practices

04/10/20 Yan Huang - ER 1


ER
 1976 proposed by Peter Chen
 ER diagram is widely used in database design
 Represent conceptual level of a database system
 Describe things and their relationships in high level

04/10/20 Yan Huang - ER 2


Basic Concepts
 Entity set – an abstraction of similar things, e.g.
cars, students
 An entity set contains many entities
 Attributes: common properties of the entities in
a entity sets
 Relationship – specify the relations among
entities from two or more entity sets

04/10/20 Yan Huang - ER 3


An Example

04/10/20 Yan Huang - ER 4


Relationship
 A relationship may be thought as a set as well
 For binary relationship, it enumerates the pairs of
entities that relate to each other
 For example, entity set M = {Mike, Jack, Tom} entity
set F = {Mary, Kate}. The relationship set married
between M and F may be {<Mike,Mary>,<Tom,
Kate>}

04/10/20 Yan Huang - ER 5


Relationship
 A relationship set is a mathematical relation among n
 2 entities, each taken from entity sets
{(e1, e2, … en) | e1  E1, e2  E2, …, en 
En}

where (e1, e2, …, en) is a relationship


 Example:
(Hayes, A-102)  depositor

04/10/20 Yan Huang - ER 6


Relationship Example

04/10/20 Yan Huang - ER 7


Attribute of A Relationship Set

04/10/20 Yan Huang - ER 8


Relationship
 The degree of a relationship = the number of
entity sets that participate in the relationship
 Mostly binary relationships
 Sometimes more
 Mapping cardinality of a relationship
 1 –1
 1 – many
 many – 1
 Many-many

04/10/20 Yan Huang - ER 9


One-One and One-Many

04/10/20 Yan Huang - ER 10


Many-one and many-many

04/10/20 Yan Huang - ER 11


1- many

04/10/20 Yan Huang - ER 12


Many - 1

04/10/20 Yan Huang - ER 13


Many - many

04/10/20 Yan Huang - ER 14


Alternative Cardinality
Specification

04/10/20 Yan Huang -CSCE4350 - ER 15


Note on Mapping Cardinality
 Both many and 1 include 0
 Meaning some entity may not participate in the
relationship

04/10/20 Yan Huang - ER 16


Total Participation
•When we require all entities to participate in the relationship
(total participation), we use double lines to specify

Every loan has to have at


least one customer

04/10/20 Yan Huang - ER 17


Self Relationship
 Sometimes entities in a entity set may relate to
other entities in the same set. Thus self
relationship
 Here employees mange some other employees
 The labels “manger” and “worker” are called
roles the self relationship

04/10/20 Yan Huang - ER 18


More examples on self-
relationship
 People to people
 Parent – children
 Manager – employee
 Husband – wife
 Word to word
 Root – synonym

04/10/20 Yan Huang - ER 19


Attributes
 Both entity sets and relationships can have
attributes
 Attributes may be
 Composite
 Multi-valued (double ellipse)
 Derive (dashed ellipse)

04/10/20 Yan Huang 350 - ER 20


Another Example

04/10/20 Yan Huang - ER 21


Keys
 A super key of an entity set is a set of one or
more attributes whose values uniquely
determine each entity.
 A candidate key of an entity set is a minimal
super key
 Although several candidate keys may exist, one
of the candidate keys is selected to be the
primary key.

04/10/20 Yan Huang - ER 22


Key Examples
 Suggest super keys for the following entity?
 What are the candidate keys?
 Primary key?

author
name death

birthday description

04/10/20 Yan Huang - ER 23


Ternary Relationship

04/10/20 Yan Huang - - ER 24


Can We Decompose a Ternary
Relationship?
 Some relationships that appear to be non-binary
may be better represented using binary
relationships
 E.g. A ternary relationship parents, relating a child to
his/her father and mother, is best replaced by two
binary relationships, father and mother
 Using two binary relationships allows partial information (e.g.
only mother being know)
 But there are some relationships that are naturally
non-binary
 E.g. works-on, why?

04/10/20 Yan Huang - ER 25


Converting Ternary to binary
 In general, any non-binary relationship can be represented using
binary relationships by creating an artificial entity set.
 Replace R between entity sets A, B and C by an entity set E, and three
relationship sets:
1. RA, relating E and A 2.RB, relating E and B
3. RC, relating E and C
 Create a special identifying attribute for E
 Add any attributes of R to E
 For each relationship (ai , bi , ci) in R, create
1. a new entity ei in the entity set E 2. add (ei , ai ) to RA
3. add (ei , bi ) to RB 4. add (ei , ci ) to RC

04/10/20 Yan Huang - ER 26


Converting Ternary to binary

04/10/20 Yan Huang - ER 27


Design an ER Diagram
 Design a database for an on-line reservation
system for microscopes in material science lab
 There are two types of users: microscope
administrators and microscope end users
 Each microscope is located in a specific lab
 Each request is assigned to an administrator
who can authorize or deny the request
 Using of some microscope requires the presence
of an administrator
 Time is divided into 1 hour slots. Each
reservation can only take one or more time slots

04/10/20 Yan Huang - ER 28


Weak Entity Set
 Some entity sets in real world naturally depend
on some other entity set
 They can be uniquely identified only if combined with
another entity set
 Example:
 section1, section2, … become unique only if you put
them into a context, e.g. csce4350

04/10/20 Yan Huang - ER 29


Weak Entity Set Notations

Double rectangles for weak entity set


Double diamond for weak entity relationship
Dashed underscore for discriminator

04/10/20 Yan Huang - ER 30


Specialization
 A lower-level entity set inherits all the attributes
and relationship participation of the higher-level
entity set to which it is linked.
 A lower-level entity set may have additional
attributes and participate in additional
relationships

04/10/20 Yan Huang - ER 31


04/10/20 Yan Huang - ER 32
Specification
 Disjoint
 Completeness constraint (use double lines)
 total : an entity must belong to one of the lower-
level entity sets
 partial: an entity need not belong to one of the
lower-level entity sets

04/10/20 Yan Huang - ER 33


Design Considerations
 Use of entity sets vs. attributes
 Whether we want to keep additional information
 Use of entity sets vs. relationship sets
 Actions among entities are usually represented by
relationships
 Binary versus n-ary relationship sets
 N-nary relationships are usually more natural for
actions among entity sets
 Weak entity set vs. strong entity set
 Generalization

04/10/20 Yan Huang - ER 34


Notations

04/10/20 Yan Huang - ER 35


Notations

04/10/20 Yan Huang - ER 36


ER Practice Again
 Design an ER diagram for an online music store.
The database will contain at least the following
concepts: songs, artists, bands, albums, and
genres.
 State your design assumptions you make to
support design decisions. Be sure your
assumptions are reasonable.

04/10/20 Yan Huang - ER 37


Best Practice Guide for ER Design

 Use of entity sets vs. attributes


 Use of entity sets vs. relationship sets
 Binary versus n-ary relationship sets
 Weak entity set vs. strong entity set
 Choose the natural one
 Generalization
 If specialized entities need to keep additional
information and participate in additional relationships

04/10/20 Yan Huang CE4350 - ER 38


ER for Banking Enterprise
 Description handhout

04/10/20 Yan Huang - ER 39


Read ER Diagrams
 Following are some ER diagrams grabbed from
the web
 Read to understand/criticize

04/10/20 Yan Huang - ER 40


?
?
?

? ?
?

?
?
04/10/20 Yan Huang - ER 41
? ? ?

?
04/10/20 Yan Huang -CSCE4350 - ER 42
?
04/10/20 Yan Huang -CSCE4350 - ER 43
04/10/20 Yan Huang -CSCE4350 - ER 44

You might also like