Upload
phamdang
View
219
Download
1
Embed Size (px)
Citation preview
MIT 22033
Database Management Systems
Lesson 03: Entity Relationship
Diagrams
By
S. Sabraz Nawaz
Senior Lecturer in MIT, FMC, SEUSL
&
A.J.M.Hasmy
FMC, SEUSL
ER - Model
• The entity-relationship (ER) data model allows us to describe
the data involved in a real-world enterprise in terms of objects
and their relationships and is widely used to develop an initial
database design
MIT 22033, Database Management Systems By: S.Sabraz Nawaz 2
E-R Model (Entities)
• The two main constructs of the Entity-
Relationship model are Entities &
Relationships
• An entity is an object in the real world that is
distinguishable from other objectso e.g. Lecturer, Student, Subject, etc.
• A collection of similar entities is called an
entity seto e.g. Lecturers, Students, Subjects, etc. ENTITY
MIT 22033, Database Management Systems By: S.Sabraz Nawaz 3
E-R Model (Entities...)
Example, an employee in a company database.
EMPLOYEES
e1
e2
e3
e4
e5
e6
…
Employee Entity setMIT 22033, Database Management Systems By: S.Sabraz Nawaz 4
E-R Model (Attribute)
• An entity is described using a set of attributeso e.g. Name, NIC, etc.
• All entities in an entity set have the same attribute
Attribute
MIT 22033, Database Management Systems By: S.Sabraz Nawaz 5
E-R Model (Attributes…)
Example: name, id, age & salary are attributes in
EMPLOYEES entity
name
id
dob
salary
EMPLOYEES
e1
e2
e3
e4
e5
e6
…
Employee Entity set
salary
dob id
name
MIT 22033, Database Management Systems By: S.Sabraz Nawaz 6
E-R Model (Attributes…)
• The attributes are said to be composite if they can be split.
Eg:- the entity Employee contains attribute 'name' which is a
composite one
LastNameFirstName
nameEMPLOYEES
MIT 22033, Database Management Systems By: S.Sabraz Nawaz 7
E-R Model (Attributes…)
• A multi-valued attribute of an entity is one which has
multiple values. o Eg:- attribute phone numbers in employee entity.
first_namephone
surname
EMPLOYEES
MIT 22033, Database Management Systems By: S.Sabraz Nawaz 8
E-R Model (Attributes…)
• Some attributes that can be computed from other attributes are
called derived attributes.
o Eg:- age is derived from date of birth & current date
nameage
EMPLOYEES
dob
MIT 22033, Database Management Systems By: S.Sabraz Nawaz 9
E-R Model (Attributes…
another sample)
Customers
MIT 22033, Database Management Systems By: S.Sabraz Nawaz 10
E-R Model (Domain)
• Each attribute in an entity set has domain; possible valueso e.g. Age attribute of an employee has possible integer values from 18-60
MIT 22033, Database Management Systems By: S.Sabraz Nawaz 11
• A Key is a minimal set of attributes whose values uniquely identify an entity in the set
E-R Model (Keys)
e1
e2
e3
e4
e5
e6
…
Employee Entity set
salary
dob id
name
MIT 22033, Database Management Systems By: S.Sabraz Nawaz 12
E-R Model (Keys...)
• A candidate key is a combination of attributes that can be uniquely used to identify a database record
• If a table has one or more candidate keys, one of these candidate keys is selected as the table primary key and the rest are called alternate keys
• Primary key is underlined
EMPLOYEES
id
MIT 22033, Database Management Systems By: S.Sabraz Nawaz 13
E-R Model (Keys...)
• A key formed by combining at least two or more columns is
called composite key
• Always, the minimal set of attributes are considered for the
key.
• Therefore,
A key is a minimal set of attributes whose values uniquely
identify an entity in the set.
MIT 22033, Database Management Systems By: S.Sabraz Nawaz 14
E-R Model (Relationship)
• A relationship is an association among two or more entities
o SaNa works for Department of MIT
o Thilan works for Department of MIT
• A collection of similar relationships is called a relationship
set
MIT 22033, Database Management Systems By: S.Sabraz Nawaz 15
E-R Model (Relationship…)
Graphically,
works
inEMPLOYEES DEPARTMENTS
MIT 22033, Database Management Systems By: S.Sabraz Nawaz 16
E-R Model (Relationship…)
• A relationship can also have descriptive attributes
• These are used to record information about the
relationshipo E.g. SaNa works for MIS Department frm November 2006. In the figure, this
is captured by the since in Works_In
nic dob
MIT 22033, Database Management Systems By: S.Sabraz Nawaz 17
E-R Model (Relationship…)
D1
D2
D3
111
222
333
444
EmployeesDepartments
Work_in
1/2/97
1/2/99
1/5/01
1/2/87
1/3/95
MIT 22033, Database Management Systems By: S.Sabraz Nawaz 18
E-R Model (Relationship…)
An instance of a relationship set is the set of relationships
D1
D2
D3
111
222
333
444
EmployeesDepartments
Work_in
1/1/91
3/3/93
2/2/92
3/1/92
3/1/92
MIT 22033, Database Management
Systems By: S.Sabraz Nawaz19
E-R Model (contd.)
• Degree of a relationship is the number of participating entities in the relationship.
• A relationship of degree two is called a binary relationship (e.g. Works In)
• A relationship with degree three is called ternary.
MIT 22033, Database Management
Systems By: S.Sabraz Nawaz20
E-R Model (contd.)
Ternary relationship
D1
D2
D3
111
222
333
444
Employees
Departments
Work_in
L1
L2
L3
Locations
MIT 22033, Database Management
Systems By: S.Sabraz Nawaz21
works
inEMPLOYEES DEPARTMENTS
LOCATIONS
Ternary relationship
MIT 22033, Database Management
Systems By: S.Sabraz Nawaz
E-R Model (contd.)
22
E-R Model (contd.)
• The cardinality ratio for a binary relationship
specifies the number of relationship instances that an
entity can participate in.
• There are three types of cardinality ratios for binary
relationships.
oOne-to-One
oOne-to-Many (Many-to-One)
oMany-to-Many
MIT 22033, Database Management
Systems By: S.Sabraz Nawaz23
E-R Model (contd.)
One-to-One relationship
Example: An employee manages at most one department. A
department can have only one manager managing it.
manages EMPLOYEES DEPARTMENTS
MIT 22033, Database Management
Systems By: S.Sabraz Nawaz24
E-R Model (contd.)
One-to-Many relationship
For example, an employee works in at most one department.
Graphically,
works
inEMPLOYEES DEPARTMENTS
MIT 22033, Database Management
Systems By: S.Sabraz Nawaz25
E-R Model (contd.)
Many-to-Many relationship
Example: An employee can work on several projects. A project
can have many employees working on it.
works
onEMPLOYEES PROJECTS
MIT 22033, Database Management
Systems By: S.Sabraz Nawaz26
E-R Model (contd.)• Participating constraint specifies whether the existence of an
entity depends on its being related to another entity via the relationship type
• For example, if we specify that an employee must always work for a department. Then we say that the relationship “works in” is in total participation from Employee entity to Department entity
• If the relationship is not in total participation, then it is known as in partial.
o For example, from DEPARTMENTS to EMPLOYEES
works in EMPLOYEES DEPARTMENTS
MIT 22033, Database Management
Systems By: S.Sabraz Nawaz27
E-R Model (contd.)
• Entity types without any key attributes is called weak entity types.
• A weak entity is uniquely identified by considering some of its attributes with the primary key of another entity called the identifying owner.
• The attributes in the weak entity participating in the key are called partial keys
• The owner entity and the weak entity participates in an identifying relationship.
• The cardinality of the identifying relationship is either one-to-one or one-to-many from owner entity to weak entity
• The weak entity must have total participation in the identifying relationship
MIT 22033, Database Management
Systems By: S.Sabraz Nawaz28
E-R Model (contd.)
Graphically (Weak Entity)
PolicyEMPLOYEE
name ageid
DEPENDENTS1 M
MIT 22033, Database Management
Systems By: S.Sabraz Nawaz29
E-R Model (contd.)
• Entities participating in a relationship need not be distinct.
Such relationships are called recursive relationships.
• Each entity in the relationship play a role in the relationship. It
is recommended to state the role in recursive relationships.
MIT 22033, Database Management
Systems By: S.Sabraz Nawaz
manages
EMPLOYEES
supervisor subordinate
30