Database Management SystemsMIT 22033
Lesson 02 – Database Design (Entity Relationship Diagram)
By S. Sabraz Nawaz
MIT 22033, By: S.Sabraz Nawaz
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, By: S.Sabraz Nawaz
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, By: S.Sabraz Nawaz
E-R Model (Entities...)
Example, an employee in a company database.
EMPLOYEES
e1
e2
e3
e4
e5
e6
…
Employee Entity set
MIT 22033, By: S.Sabraz Nawaz
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, By: S.Sabraz Nawaz
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, By: S.Sabraz Nawaz
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
LastName FirstName
nameEMPLOYEES
MIT 22033, By: S.Sabraz Nawaz
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_name phonesurname
EMPLOYEES
MIT 22033, By: S.Sabraz Nawaz
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, By: S.Sabraz Nawaz
E-R Model (Attributes… another sample)
Customers
MIT 22033, By: S.Sabraz Nawaz
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, By: S.Sabraz Nawaz
• 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, By: S.Sabraz Nawaz
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 underlinedEMPLOYEES
id
MIT 22033, By: S.Sabraz Nawaz
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, By: S.Sabraz Nawaz
E-R Model (Relationship)
• A relationship is an association among two or more entitieso Sanath works for MIS Departmento Thilan works for MIS Department
• A collection of similar relationships is called a relationship set
MIT 22033, By: S.Sabraz Nawaz
E-R Model (Relationship…)
Graphically,
works in
EMPLOYEES DEPARTMENTS
MIT 22033, By: S.Sabraz Nawaz
E-R Model (Relationship…)
• A relationship can also have descriptive attributes• These are used to record information about the relationship
o 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, By: S.Sabraz Nawaz
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, By: S.Sabraz Nawaz
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, By: S.Sabraz Nawaz
E-R Model (contd.)
Ternary relationship
D1
D2
D3
111
222
333
444
Employees
Departments
Work_in
L1
L2
L3
Locations
MIT 22033, By: S.Sabraz Nawaz
works in
EMPLOYEES DEPARTMENTS
LOCATIONS
Ternary relationship
E-R Model (contd.)
MIT 22033, By: S.Sabraz Nawaz
E-R Model (contd.)
Sometimes, relationships can also have attributes called descriptive attributes that record information about the relationship
works in
EMPLOYEES DEPARTMENTS
since
MIT 22033, By: S.Sabraz Nawaz
E-R Model (contd.)
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, By: S.Sabraz Nawaz
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. They are one-to-one, one-to-many (many-to-one) and many-to-many.
MIT 22033, By: S.Sabraz Nawaz
E-R Model (contd.)
For example, an employee works in at most one department. Graphically,
This is a one-to-many relationship
works in
EMPLOYEES DEPARTMENTS
MIT 22033, By: S.Sabraz Nawaz
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, By: S.Sabraz Nawaz
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 on
EMPLOYEES PROJECTS
MIT 22033, By: S.Sabraz Nawaz
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, By: S.Sabraz Nawaz
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, By: S.Sabraz Nawaz
E-R Model (contd.)
Graphically (Weak Entity)
PolicyEMPLOYEE
name ageid
DEPENDENTS1 M
MIT 22033, By: S.Sabraz Nawaz
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.
manages
EMPLOYEES
supervisor subordinate
MIT 22033, By: S.Sabraz Nawaz 32
Reference:Ramakrishnan, R., & Gehrke, J. (2003). Database management systems. Osborne/McGraw-Hill. (Pp. 24 – 50)
Top Related