31
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

MIT 22033 Database Management Systems - sabraz · MIT 22033 Database Management Systems Lesson 03: Entity Relationship Diagrams By S. Sabraz Nawaz Senior Lecturer in MIT, FMC, SEUSL

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

Reference:

Ramakrishnan, R., & Gehrke, J. (2003). Database management

systems. Osborne/McGraw-Hill. (p. 24-50)

31MIT 22033, Database Management Systems By: S.Sabraz Nawaz