Sei sulla pagina 1di 35

Data Base Management System

Chapter at a Glance

Introduction to ER Model

Entity

Entity Type

Entity Instance

Entity Set

Attribute and its Type

Single Valued Attribute

Multi Value Attribute

Composite Attribute

Atomic Attribute

Derived Attribute

Stored Attribute

Relationship

Degree of Relationship

o

Unary Relationship

o

Binary Relationship

o

Ternary Relationship

Cardinality of Relationship

o

One to One

o

One to Many

o

Many to One

o

Many to Many

Concept of Key

Super Key

Candidate Key

Primary Key

Introduction to ER Diagram and Useful Notations

Role and Participations

o Recursive Relation Authored By: Prof. Soumik Das

Data Base Management System

o Participation Constraints

Cardinality Constraints Revisited

Degree of Relations Revisited

Multiple Relationship

Attribute of a Relationship

Enhanced Features of ER Modeling

Specialization & Generalization

o

Subclass

o

IS-A relationship

o

Attribute Inheritance

o

Multiple Specialization

o

Multi Level Specialization

Constraints on Specialization & Generalization

o

Overlapping Constraint

o

Covering Constraint

Aggregation

Solved Assignments

Exercises

Authored By: Prof. Soumik Das

Data Base Management System

CHAPTER 2

Entity Relationship Model (ER Model)

Introduction

Entity-relationship modeling is a high-level data modeling technique that helps designers to create appropriate, accurate and useful conceptual models. E-R models are best expressed using E-R diagrams (a graphical representation). In the year of 1976 Professor Peter Chen has invented this technique to serve it as a tool for useful communication between database designers and database users. It is recognized the problems that are caused when developers and users fail to understand each other. It is typical for developers and users to think that they each know exactly what the other is thinking. Otherwise it leads misunderstanding; sometimes developers build information systems that do not meet user needs. The result is the failure of the system that was developed.

E-R diagrams provide a visual, graphical model of the information content of a system. Developers create E-R diagrams that represent their view of user requirements. Users then carefully evaluate and check the E-R diagrams to make sure that their needs are being met or not. Once the E-R diagram has been approved by the user community, the diagram provides the specification of what must be accomplished by the developers. In the presence of accurate models, developers can be confident that they are building useful systems.

Authored By: Prof. Soumik Das

Data Base Management System

The key features of ER Modeling at a glance:

o

It is simple and easily understood by non-specialists.

o

It is easily conceptualized; the basic constructs (entities and relationships) are highly intuitive and thus provide a very natural way of representing a user's information requirements.

o

It is a model that describes a world in terms of entities and attributes that is most suitable for computer-naïve end users.

2.1 Entities, Attributes & Relationships

The Entity Relationship (ER) model is a method based on which database systems can be built by considering data as entities, relationships and attributes. The object, depending on which ER model is developed, is an entity that has an independent existence. Every entity is described through certain properties called attributes. And by which two or more entities are related among each other is called relationship.

2.1.1 Entity

Definition: An entity is an object that exists in real world with independent existence having certain properties and distinguishable from other objects.

For example, Samir Das is a student of BCA stream. We can say he is an entity because he has certain properties like name, roll, year, class by which he is distinguishable from other students. Similarly Dipak Sharma, an account holder in Axis Bank is an entity because he has a name, a/c number, a/c opening date by which he is distinguishable from other account holders.

Authored By: Prof. Soumik Das

Data Base Management System

2.1.2

Entity Type

Definition: Entity Type is an abstraction, defining the properties of a similar set of entities.

For example, student is an entity type and account holder is another entity type. If Samir Das and Dipak Sharma both are BCA students then they will be having some common properties.

2.1.3 Entity Instances

Definition: Initiation of entity types is called entity instances.

For example, if Samir Das is an account holder in Axis Bank and a BCA student as well then he becomes an entity instance of student and account holder entity type.

2.1.4 Entity Set

Definition: A set of same type of entity instances called the entity set.

For example, all account holders of Axis Bank conforms an entity set. In the same way we can say all the BCA student is an entity set.

2.1.5 Attributes

Definition: Entities are having certain properties by which they exist independently in the real world called attributes.

Authored By: Prof. Soumik Das

Data Base Management System

For example, jersey number, team name are attributes of a player entity; ISBN number, author, publisher, title are the attributes of a book entity; roll, name, stream, year are the attributes of a student entity. Different type of attribute is discussed hereinafter.

Single-valued Attribute:

If a certain value is possible for a given attribute, we can say that is a single valued attribute. For example, roll; account number can not contain more than one value.

Multi-valued Attribute:

If

more than one value is possible for a given attribute, we can say that is

a multi valued attribute. For example, favorite food, languages known may have more than one value.

Simple / Atomic Attribute:

An attribute that can not be divided is called simple or atomic attribute.

. For example, roll number, account number are the atomic attributes because they can not be divided any further.

Composite Attribute:

An attribute which can be divided in smaller sub parts is called composite attribute. For example, address is a composite attribute because it can be further divided in to house number, street name, district, city and PIN.

Derived Attribute:

An attribute that we can derive from other attribute is called derived attribute.

Authored By: Prof. Soumik Das

Data Base Management System

For example, age is a derived attribute because it can be derived from DOB (Date of Birth). Similarly rank is a derived attribute from marks.

Stored Attribute:

An attribute from where the derived attributes are derived. For example, age is derived from DOB, so DOB is the stored attribute.

2.1.6 Relationships

While entity types describe independent artifacts, relationship types describe meaningful associations between entity types. To be very precise, the relationship type describes that entities of entity types participating in the relationship can build a meaningful association. The actual occurrence of the association between entities is called a relationship. It is important to understand that although we defined a relationship type, this does not mean that every pair of entities builds a relationship. A relationship type defines only that relationships can occur.

For example teacher entity type is associated with student entity type with teaches relation in such a way teacher teaches student. So we can say these two entity type teacher and student builds a meaningful association with the relation teaches. On the other hand student entity type associated with examination entity type with sit for relation in a way student sit for examination. But teacher entity type is not associated with examination, because if they associated no meaningful association will be made.

2.1.6.1 Degree of Relationships

The number of entity sets that participate in a relationship is called the degree of relationship. The three most common degrees of a relationship in a database are unary (degree 1), binary (degree 2), and ternary (degree 3). We will briefly define Authored By: Prof. Soumik Das

Data Base Management System

these degrees and then explore each kind of relationship in detail in subsequent sections.

Let E1, E2,

degree of the relationship can also be expressed as follows:

, En denote n entity sets and let R be the relationship. The

Unary Relationship:

A unary relationship R is an association between two instances of the same entity type (i.e., R Є E1 × E1). For example, two students are roommates and stay together in an apartment. Because they share the same address, a unary relationship exists between them for the attribute Address.

Binary Relationship:

A binary relationship R is an association between two instances of two different entity types (i.e., R Є E1 × E2). For example, in a university, a binary relationship exists between a student (STUDENT entity) and an instructor (FACULTY entity) of a single class; an instructor teaches a student.

Ternary Relationship:

A ternary relationship R is an association between three instances of three

different entity types (i.e., R Є E1 × E2 × E3). For example, consider a student using certain equipment for a project. In this case, the STUDENT, PROJECT, and EQUIPMENT entity types relate to each other with ternary relationships: a student checks out equipment for a project.

3.7

2.1.6.2 Cardinality of Relationships:

The cardinality of relationships can be defined as the actual number of related occurrences for each of the two entities A and B (that means how many numbers of instances of A is associated with how many numbers of instances of B). Then the maximum cardinality represents the maximum number of instances of entity

Authored By: Prof. Soumik Das

Data Base Management System

B that can be associated with any instance of entity A. Figure 2.1 illustrates possible cardinalities of relationships.

One-to-One Relationship:

In a one-to-one relationship, at most one instance of entity B can be associated with a given instance of entity A and vice versa.

associated with a given instance of entity A and vice versa. Figure 2.1 Four types of

Figure 2.1

Four types of cardinality between A and B

One-to-Many Relationship:

In a one-to-many relationship, many instances of entity B can be associated with a given instance of entity A. However, only one instance of entity A can be associated with a given instance of entity B. For example, while a customer of a company can make many orders, an order can only be related to a single customer.

Many-to-One Relationship:

In a many-to-one relationship, one instance of entity B can be associated with a given instance of entity A. However, many instances of entity A can be associated with a given instance of entity B.

Authored By: Prof. Soumik Das

Data Base Management System

Many-to-Many Relationship:

In a many-to-many relationship, many instances of entity A can be

associated with a given instance of entity B, and, likewise, many instances

of entity B can be associated with a given instance of entity A. For

example, a machine may have different parts, while each individual part

may be used in different machines.

2.2 Keys

A key attribute is a single attribute or a combination of attributes that uniquely

identify an individual instance of an entity type. No two instances within an entity

set can have the same key attribute value. For the STUDENT entity roll is the key

attribute since each student roll number is unique. Name, by contrast, cannot be

an identifier because two students can have the same name.

Sometimes no single attribute can uniquely identify an instance of an entity type.

However, in these circumstances, we identify a set of attributes that, when

combined, is unique for each entity instance. In this case the key attribute, also

known as composite key.

Super Key:

A super key is a set of one or more attributes which taken collectively,

allows us to identify uniquely an entity in the entity set.

For example for the entity set student roll and name is a super key. The

name alone is not a super key because two students can have the same

name. Note that an entity set can have more than one super key.

Candidate Key:

Candidate key is a super key whose no proper subset is a super key. In

other words we can also say the minimal super key is the candidate key. Authored By: Prof. Soumik Das

Data Base Management System

For example roll and name can jointly identify a student uniquely. But roll alone can also distinguish a student so roll is definitely another super key

of student entity set. Moreover it is the minimal super key. So we can say

roll is the candidate key of entity set student.

Primary Key:

A primary key is a candidate key chosen by database designer to identify

entities in an entity set. The primary key is used as the primary access

mechanism for the entity set.

Weak Vs Strong Entity Set:

If

an entity set doesn’t have sufficient attributes to form a primary key is

called weak entity set. In contrast one entity set having a primary key is called a strong entity set. The strong entity sets can exist on their own, without participating in any relationship. But for a weak entity set, each entity instance has to participate in a relationship with a strong entity set in order to exist. The strong entity set is also called the owner of the weak entity set.

2.3 ER Diagram

ER diagram is a toll that represents the database in a graphical, symbolic and easy to understand manner. It standardizes the concept of ER modeling and also very useful for mapping the ER model to relational DBMS implementation. There are some accepted standard to prepare an ER diagram for the conceptual design phase of database. Actually ER diagrams enable designers and users to express their understanding of what the planned database is intended to do and how it might work, and to communicate about the database through a common language.

Authored By: Prof. Soumik Das

Data Base Management System

Here we will learn how to graphically represent the concepts introduced in the previous sections of this chapter. Figure 2.2 represents the usual notations that are used to construct an ER diagram.

usual notations that are used to construct an ER diagram. Figure 2.2 Usual ER diagram notations
usual notations that are used to construct an ER diagram. Figure 2.2 Usual ER diagram notations

Figure 2.2

Usual ER diagram notations

CASE STUDY I

Let us assume a situation where BCA and MCA students are attending classes

of many subjects. So if we want to represent this fact with an ER diagram, we need to go through the following phases

First of all we need to identify the entity set for the given case. Here we can identify two entity sets STUDENT and SUBJECT.

After identifying the entity sets we need to identify the properties or attributes of the entity sets. Also inspect for the key attribute by which a entity instance is distinguishable from other entity instances of the same entity set. A STUDENT entity set can have attributes like Name, Roll, DOB, Age, Address, PhoneNo, Stream and Year. On the other hand SUBJECT can be described by SubjectName, SubjectCode. For STUDENT entity set Roll can be chosen as the key attribute because

Authored By: Prof. Soumik Das

Data Base Management System

university roll number of two students can not be same. In the same way

we can identify the SubjectCode as the key attribute of SUBJECT.

Now we need to find if there exist any relationships by which a meaningful

association can be done among entity sets. In this context we can easily

identify a relation LEARNING.

Figure 2.3 represents the ER diagram for the aforesaid case.

Name DOB Age STUDENT LEARNING
Name
DOB
Age
STUDENT
LEARNING
Subject Name
Subject
Name
SUBJECT
SUBJECT
SUBJECT
SUBJECT
SUBJECT
SUBJECT
SUBJECT

SUBJECT

SUBJECT
SUBJECT
SUBJECT
SubjectCode
SubjectCode
Roll Phone No Street Stream Address Name Year City House No PIN
Roll
Phone
No
Street
Stream
Address
Name
Year
City
House
No
PIN

Figure 2.3

ER diagram for CASE STUDY-I

Note that we designate the PhoneNo attribute as a multivalued attribute as a

student can have more than one phone number. The Age is designated as a

derived attribute because from DOB attribute we can derive it. On the other hand

Address can be divided in sub parts like HouseNo, StreetName, City and PIN.

So we can consider Address as a composite attribute. As already told the Roll

and SubjectCode are designated as the key attributes of the entity sets

STUDENT and SUBJECT respectively.

Authored By: Prof. Soumik Das

Data Base Management System

2.3.1 Role & Participation

Every entity type that participates in a relationship plays a definite role in that relationship. For example, consider a relationship IS-FATHER-OF, that defines a binary relationship between two same entity sets. Kabir is an entity instance IS- FATHER-OF Alam and Alam is an entity instance IS-FATHER-OF Rubina. So we can see in the first instance Alam plays a role as a son whereas in the other instance Alam plays a role as a father. A role is not necessary if the participating entity sets are distinct. But it is very important to identify the roles when entity sets are not distinct.

Recursive Relationship:

When the participating entity sets are not distinct in the relationship types,

they are referred recursive relationships. Figure 2.4 shows an example of recursive relationship.

EMPLOYEE 1 N Manager MANAGES Figure 2.4 Recursive Relationship
EMPLOYEE
1
N
Manager
MANAGES
Figure 2.4
Recursive Relationship

Subordinate

Authored By: Prof. Soumik Das

Data Base Management System

Participation Constraints:

The participation Constraint specifies how the occurrence of an entity

depends on the other entity in the relationship. This constraint is of two types

total and partial.

Figure 2.5 illustrates an example of participation constraint clearly. Consider a

situation where every student must be a member of a team, or, in other words, a

student entity is of interest only if it participates in a MemberOf relationship.

Thus, we can include in an ER diagram a participation constraint in which

participation of student in MemberOf is total. A double line (sometime a strong

line) indicates the total participation constraint in an ER diagram. However, the

participation of student in LeaderOf is partial, because a student might be a team

leader.

MemberOf N M
MemberOf
N
M

STUDENTS

TEAM

1 1 LeaderOf
1
1
LeaderOf

Figure 2.5

Total & Partial participation constraints

2.3.2 Cardinality Constraints

In section 2.1.6 we have seen that in a binary relationship, cardinality constraint

depict whether the relation is one-to-one, one-to-many, many-to-one and many-

to-many. The following examples show how the relation ships are designated in

ER diagram. Some times arrow is used to designate the relationship cardinality

and some times we label the link by 1 or N. Authored By: Prof. Soumik Das

Data Base Management System

One-to-One:

MANAGES
MANAGES

PRINCIPAL

COLLEGE

One-to-Many:

HAS
HAS

TEAM

PLAYER

Many-to- One:

WORKSON
WORKSON

ENGINEER

PROJECT

Many-to- Many:

TEACHES
TEACHES

TEACHER

STUDENT

ENGINEER PROJECT  Many-to- Many: TEACHES TEACHER STUDENT 2.3.3 Degree / Types of Relationship In section

2.3.3 Degree / Types of Relationship

In section 2.1.6 we have learnt about degree or types of relation like unary, binary and ternary relationship. The following examples describe how to represent the relationships having different degrees in ER diagram.

Authored By: Prof. Soumik Das

Data Base Management System

Unary Relationship:

Figure 2.6(A) and 2.6(B) represents several relationship instances of IsMarriedTo relationship. Each relationship instance (r1, r2, r3, and r4) connects two instances of PERSON entity set. The lines allow us to read relationships between entity instances. For example, r2 suggests that person p4 is married to person p8 and so on.

PERSON

IsMarriedTo p1 p2 r1 p3 r2 p4 r3 p5 r4 p6 p7 p8
IsMarriedTo
p1
p2
r1
p3
r2
p4
r3
p5
r4
p6
p7
p8

Figure 2.6(A)

Unary relationship with One-to-One cardinality

Figure 2.6(A) Unary relationship with One-to-One cardinality IsMarriedTo PERSON Figure 2.6(B) ER Diagram of Unary
IsMarriedTo
IsMarriedTo

PERSON

relationship with One-to-One cardinality IsMarriedTo PERSON Figure 2.6(B) ER Diagram of Unary relationship with

Figure 2.6(B)

ER Diagram of Unary relationship with One-to-One cardinality

Authored By: Prof. Soumik Das

Data Base Management System

For example, a person Rajiv is an entity instance of PERSON entity set is married to Sujata, another instance of the same entity set PERSON. According to definition of unary relationship it falls in a category of degree 1.

Binary Relationship:

Figure 2.7(A) and 2.7(B) represents several relationship instances of Manages relationship. Each relationship instance (r1, r2, r3, r4 and r5) connects one instance of MANAGER entity set to one instance of

DEPARTMENT entity set. The lines allow us to read relationships between entity instances. For example, r1 suggests that manager m1 manages department d2 and so on.

MANAGER

DEPARTMENT

m1

m2

m3

m4

m5

Manages

r1 r2 r3 r4 r5
r1
r2
r3
r4
r5

d1

d2

d3

d4

d5

Figure 2.7(A)

Binary relationship with One-to-One cardinality

MANAGES
MANAGES

MANAGER

DEPARTMENT

Figure 2.7(B)

ER Diagram of Binary relationship with One-to-One cardinality

Authored By: Prof. Soumik Das

Data Base Management System

Ternary Relationship:

Figure 2.8(A) and 2.8(B) represents several relationship instances of Teaches relationship. Each relationship instance (r1 and r2) connects one instance of TEACHER entity set to several instances of STUDENT entity set and one instance of COURSE entity set. The lines allow us to read relationships between entity instances. For example, r1 suggests that teacher t1 teaches s1 and s2 students in course c1 and so on.

TEACHER COURSE TEACHES t1 c1 r1 t2 c2 r2 s1 s2 s3 STUDENT Figure 2.8(A)
TEACHER
COURSE
TEACHES
t1
c1
r1
t2
c2
r2
s1
s2
s3
STUDENT
Figure 2.8(A)
Ternary Relationship
TEACHER
TEACHES
COURSE
STUDENT

Figure 2.8(B)

ER Diagram of Ternary Relationship

Authored By: Prof. Soumik Das

Data Base Management System

2.3.4

Multiple Relationship

A set of entity sets can be meaningfully associated among themselves with more than one relationship. This is referred as multiple relationship. Figure 2.9 illustrates a case where two entity sets ENGINEERS and PROJECT associated with two relationships WorksOn and Manages.

Salary WorksOn ID Name N M ENGINEER PROJECT 1 1 Duration Name Manages Budget EmpID
Salary
WorksOn
ID
Name
N
M
ENGINEER
PROJECT
1
1
Duration
Name
Manages
Budget
EmpID

Figure 2.9

Multiple Relationship

2.3.5 Attribute of a Relationship

An attribute on a relationship stores information related to the relationship. In Figure 2.10, the attribute Date stores the date of marriage.

2.10, the attribute Date stores the date of marriage. Date IsMarriedTo PERSON Figure 2.10 Attribute of
Date IsMarriedTo
Date
IsMarriedTo

PERSON

Date stores the date of marriage. Date IsMarriedTo PERSON Figure 2.10 Attribute of Relationship Authored By:

Figure 2.10

Attribute of Relationship

Authored By: Prof. Soumik Das

Data Base Management System

2.4 Enhanced Features of ER Modeling

The ER model provides adequate mechanism for modeling most of the traditional database applications. But some cases from newer application domain can not be designed by the set of concept we discussed in earlier sections. In current context some enhanced mechanism of ER modeling will be discussed. We can say this enhancement as an extension of ER model to object oriented paradigm.

2.4.1 Specialization & Generalization

Let us consider a situation where BCA students are the entity instances of STUDENT entity set. At the same time MCA students are also the instances of STUDENT entity set. In this kind of situation if we want to represent this with the help of ER diagram, we need to consider two different entity sets BCA STUDENT and MCA STUDENT. Although they are having many attributes common among themselves. If we visualize this situation as object orientation, then we can easily identify that BCA and MCA both entity sets are the subclass of entity set STUDENT.

Subclass:

A subclass of entity set is a set entities with all the attributes found in the base entity set and with some other attribute may associated with it. The relationships in which the base class is participating, the subclass will definitely participate in those relationships, with addition to that subclass may be associated with other relationships.

For example, BCA STUDENT will have the attributes of STUDENT entity set. More over some other attributes may also be associated with it.

Authored By: Prof. Soumik Das

Data Base Management System

IS-A Relationship:

In Enhanced ER (EER) diagram the base class, subclass hierarchy is

represented with a special kind of relationship called IS-A relationship. Figure

2.11 illustrates the concept of IS-A relationship.

Name DOB Roll Age SubjectCode Subject Name STUDENT LEARNING SUBJECT
Name
DOB
Roll
Age
SubjectCode
Subject
Name
STUDENT
LEARNING
SUBJECT
IS-A
IS-A
GroupID
GroupID

BCA

STUDENT

MCA

STUDENT

IS-A
IS-A

THEORITICAL

PRACTICAL

Figure 2.11

IS-A Relationship

In Figure 2.11 we can see, BCA STUDENT and MCA STUDENT entity sets are

the subclasses of entity set STUDENT. The entity set BCA STUDENT will have

all the attributes of STUDENT entity set such as Roll, Name, DOB and Age.

Similarly entity set MCA STUDENT will have all the attributes of STUDENT entity

set, with addition to that MCA STUDENT will have GroupID as its attribute. On

the other hand a subject can be either theoretical or practical so the entity set

SUBJECT will have two entity sets as its subclass THEORITICAL and

PRACTICAL. These two entity set will inherit all the attributes from its base class

like BCA STUDENT and MCA STUDENT. This phenomenon is known as

attribute inheritance.

Authored By: Prof. Soumik Das

Data Base Management System

Specialization:

Imparting IS-A relationship in ER diagram helps us to categorize our entity set

in a specialized way. For example, the entity sets BCA STUDENT and MCA

STUDENT are the specialized category of entity set STUDENT. Informally

this top-down approach from base class to subclass is called specialization.

Definition: Specialization is a process f identifying subsets of an entity set

that share some distinguishing characteristics.

Note that, we can have more than one specialization from a given entity set. This

is known as multiple specialization. For example, entity set STUDENT can be

specialized with IS-A relationship as BCA STUDENT and MCA STUDENT. And

at the same time it can also be specialized as DAY SCHOLAR and

HOSTELLER. Figure 2.12 depicts multiple specialization.

Name DOB Roll Age STUDENT
Name
DOB
Roll
Age
STUDENT
IS-A
IS-A

MCA

STUDENT

IS-A
IS-A

DAY SCHOLAR

GroupID
GroupID

BCA

STUDENT

HOSTELLER

Figure 2.12

Multiple Specialization

Authored By: Prof. Soumik Das

Data Base Management System

We can also have hierarchy of IS-A relationship. This is known as multilevel

specialization. For example, we can have BCA STUDENT entity set from

STUDENT entity set through IS-A relationship. Again the entity set BCA

STUDENT can be further categorized as YEAR-I, YEAR-II and YEAR-III through

specialization. Figure 2.13 illustrates multilevel specialization.

Name DOB Roll Age STUDENT IS-A
Name
DOB
Roll
Age
STUDENT
IS-A

BCA

STUDENT

IS-A
IS-A

YEAR-II

YEAR-III

YEAR-I

Figure 2.13

Multilevel Specialization

Generalization:

IS-A relationship gives us the specialized entity sets from a given entity set. If

we approach in reverse direction of specialization, that means bottom-up

manner, we will get an entity set that is generalized form of specialized entity

sets. Figure 2.14 illustrates the generalization clearly.

Authored By: Prof. Soumik Das

Data Base Management System

Definition: Generalization is concerned with identifying some common

attributes of a collection of entity sets and forming a new entity set that

contains entities possessing these common attributes.

Name DOB Roll Age STUDENT
Name
DOB
Roll
Age
STUDENT
IS-A
IS-A

BCA

STUDENT

MCA

STUDENT

Figure 2.14

Generalization & Specialization

2.4.2 Constraints on Specialization & Generalization

Consider the following cases

Is it possible that a subject is an elective subject as well as a core subject?

Is it possible that a customer is a depositor as well as a borrower?

Is it possible that a student is day scholar as well as a hosteller?

It is possible for a bank customer that he deposits money to his account as well

as he has taken a loan from the bank. So he is a borrower as well. Similarly a

subject may be an elective subject for BCA students at the same time it can be a

core subject for MCA students. But at the same time a student can not be a day

scholar and a hosteller.

Authored By: Prof. Soumik Das

Data Base Management System

These observations are nothing but some constraints on specialization and

generalization. And now we need to know how to impart these constraints in IS-A

relationships.

Overlap Constraint:

Overlap constraints determine whether two subclasses are allowed to contain

the same entity instance. In other words there may exist two situations the

subclasses may have overlapping entity or are disjoint among themselves.

For example, consider the second case mentioned above. A subject may be

an elective subject for a group of students at the same time it can be a core

subject for other group of students. Here overlapping is allowed so we label

the link with a ‘o’ and otherwise it is labeled with ‘d’. Figure 2.15 depicts

overlap constraint.

SubjectCode
SubjectCode
Subject Name
Subject
Name

SUBJECT

O IS-A
O
IS-A

ELECTIVE

CORE

Figure 2.15

Overlap Constraint

Authored By: Prof. Soumik Das

Data Base Management System

Covering Constraint:

Covering constraint determine whether the entities in the specialized

subclasses collectively include all the entities of base class. We can say

covering is total if the subclasses cover all the entities of base class and it is

denoted with double line. Otherwise we say the covering is partial and

denoted with a single line. Figure 2.16 illustrates the total and partial covering

constraint.

STUDENT

PARTIAL IS-A
PARTIAL
IS-A
TOTAL IS-A
TOTAL
IS-A

DAY SCHOLAR

BCA

STUDENT

HOSTELLER

Figure 2.16

Covering Constraint

The entities of subclass BCA STUDENT do not cover all the entities of base

class STUDENT. Because there exist many student entities those are not BCA

students. That’s why the covering is partial. On the other hand an entity of

STUDENT is either an entity of DAY SCHOLAR subclass or an entity of

HOSTELLER subclass. So collectively all the entities of these two subclasses

cover all the entities of base class STUDENT. That’s why here the covering is

total.

Authored By: Prof. Soumik Das

Data Base Management System

2.4.3 Aggregation

Definition: Aggregation - a feature of the entity relationship model that allows a

relationship set to participate in another relationship set.

Consider the case illustrated in Figure 2.17.

set. Consider the case illustrated in Figure 2.17. WORKS PROJECT ON USES COMPUTER ENGINEER Figure 2.17
WORKS PROJECT ON USES
WORKS
PROJECT
ON
USES
COMPUTER
COMPUTER
COMPUTER

COMPUTER

ENGINEER

ENGINEER

ENGINEER
ENGINEER
ENGINEER
ENGINEER
ENGINEER
ENGINEER

Figure 2.17

An Example

If we observe the case, we can see WORKS ON is a binary relationship whereas

USES is a ternary relationship. By Aggregation we can correlate these two

relationships. Using aggregation, we can view the relationships as a higher level

entity. Figure 2.18 illustrates the aggregation.

Authored By: Prof. Soumik Das

Data Base Management System

ENGINEER

ENGINEER
ENGINEER
ENGINEER
ENGINEER PROJECT WORKS ON
PROJECT
PROJECT

PROJECT

PROJECT
ENGINEER PROJECT WORKS ON
WORKS ON
WORKS
ON
USES
USES
COMPUTER
COMPUTER
COMPUTER

COMPUTER

Figure 2.18

Aggregation

Data Base Management System

SOLVED ASSIGNMENT

ASSIGNMENT I: Construct an E-R diagram for a car-insurance company whose customers own one or more cars each. Each car has associated with it zero to any number of recorded accidents.

SOLUTION:

with it zero to any number of recorded accidents. SOLUTION: ASSIGNMENT II: Construct an E-R diagram

ASSIGNMENT II: Construct an E-R diagram for a hospital with a set of patients and a set of medical doctors. Associate with each patient a log of the various tests and examinations conducted.

SOLUTION:

Associate with each patient a log of the various tests and examinations conducted. SOLUTION: Authored By:

Authored By: Prof. Soumik Das

Data Base Management System

ASSIGNMENT III: A university registrar’s office maintains data about the following entities: (a) courses, including number, title, credits, syllabus, and prerequisites; (b) course offerings, including course number, year, semester, section number, instructor(s), timings, and classroom; (c) students, including student-id, name, and program; and (d) instructors, including identification number, name, department, and title. Further, the enrollment of students in courses and grades awarded to students in each course they are enrolled for must be appropriately modeled. Construct an E-R diagram for the registrar’s office. Document all assumptions that you make about the mapping constraints.

SOLUTION:

The main entity sets are student, course, course-offering, and instructor. The entity set course-offering is a weak entity set dependent on course. The assumptions made are:

a. A class meets only at one particular place and time. This E-R diagram cannot model a class meeting at different places at different times. b. There is no guarantee that the database does not have two classes meeting at the same place and time.

Authored By: Prof. Soumik Das

Data Base Management System

Data Base Management System ASSIGNMENT IV: Consider a database used to record the marks that students

ASSIGNMENT IV: Consider a database used to record the marks that students get in different exams of different course offerings. a. Construct an E-R diagram that models exams as entities, and uses a ternary relationship, for the above database.

b. Construct an alternative E-R diagram that uses only a binary relationship between students and course-offerings. Make sure that only one relationship exists between a particular student and course- offering pair, yet you can represent the marks that a student gets in different exams of a course offering.

**Note that, identifying the primary key of relations and imparting cardinality ratios for all relations of the assignments are left for the students.

Authored By: Prof. Soumik Das

Data Base Management System

SOLUTION:

a.

Data Base Management System SOLUTION: a. b. Authored By: Prof. Soumik Das

b.

Data Base Management System SOLUTION: a. b. Authored By: Prof. Soumik Das

Authored By: Prof. Soumik Das

Data Base Management System

Exercises

Multiple Answer Type Questions

1. Properties of an entity called

a.

Instances

b.

Attributes

c.

Parameters

d.

None of these

2. If ‘DOB’ is stored in database then ‘Age’ falls in which category?

a.

Multi valued

b.

Stored

c.

Derived

d.

Composite

3. R is an association between two instances of the same entity type; R is a

a.

Unary relation

b.

Binary relation

c.

Ternary relation

d.

None of these

4. Candidate key is a subset of super key

a.

True

b.

False

5. When two entity sets are related with two atomic relations then it is called

a.

Recursive relationship

b.

Multiple relationship

c.

Binary relationship

d.

All of these

6. Attribute inheritance occurs in

 

a.

Generalization

b.

Specialization

c.

Aggregation

d.

None of these

Authored By: Prof. Soumik Das

Data Base Management System

Short Answer Type Questions

1. What is cardinality of a relationship?

2. Describe Attribute inheritance with proper diagram.

3. Differentiate overlapping and covering constraints with suitable

examples.

4. With a proper example describe aggregation.

5. What is weak entity set? Explain.

Broad Answer Type Questions

1. What is degree of a relationship? Describe with examples.

2. Design an ER diagram of a banking enterprise.

3. What is recursive relationship? Describe role and participation.

4. What is multilevel specialization? Explain using a suitable example and proper diagram.

5. Design an ER diagram of your college considering following points

i. Final year students can assist professors in lab classes.

ii. Final year students have major project.

iii. A teacher can take class of different departments.

iv. A student can have hostel accommodation.

Authored By: Prof. Soumik Das