SlideShare uma empresa Scribd logo
1 de 33
Baixar para ler offline
Entity-Relationship
(E/R) Model
ITEC - 514/515: Database Systems
Courtesy: Prof. P. Sreenivasa Kumar CS&E Dept., IIT, Madras
Bisharat Memon, Lecturer, IICT, UoS, Jamshoro
2
Entity-Relationship (E/R) Model
ƒ Widely used conceptual level data model
• proposed by Peter P Chen in 1970s
ƒ Data model to describe the database system at the requirements
collection stage
• high level description.
• easy to understand for the enterprise managers.
• rigorous enough to be used for system building.
ƒ Concepts available in the model
• entities and attributes of entities.
• relationships between entities.
• diagrammatic notation.
3
Entities
ƒ Entity - a thing (animate or inanimate) of independent
physical or conceptual existence and distinguishable.
In the University database context, an individual
student, faculty member, a class room, a course
are entities.
ƒ Entity Set or Entity Type-
Collection of entities all having the same properties.
Student entity set – collection of all student entities.
Course entity set – collection of all course entities.
4
Attributes
Each entity is described by a set of attributes/properties.
student entity
ƒ StudName – name of the student.
ƒ RollNumber – the roll number of the student.
ƒ Sex – the gender of the student etc.
All entities in an Entity set/type have the same set of attributes.
Chosen set of attributes – amount of detail in modeling.
5
Types of Attributes (1/2)
• Simple Attributes
ƒ having atomic or indivisible values.
example: Dept – a string
PhoneNumber – an eight digit number
• Composite Attributes
ƒ having several components in the value.
example: Qualification with components
(DegreeName, Year, UniversityName)
• Derived Attributes
ƒ Attribute value is dependent on some other attribute.
example: Age depends on DateOf Birth.
So age is a derived attribute.
6
Types of Attributes (2/2)
• Single-valued
ƒ having only one value rather than a set of values.
ƒ for instance, PlaceOfBirth – single string value.
• Multi-valued
ƒ having a set of values rather than a single value.
ƒ for instance, CoursesEnrolled attribute for student
EmailAddress attribute for student
PreviousDegree attribute for student.
• Attributes can be:
ƒ simple single-valued, simple multi-valued,
ƒ composite single-valued or composite multi-valued.
7
Diagrammatic Notation for Entities
entity - rectangle
attribute - ellipse connected to rectangle
multi-valued attribute - double ellipse
composite attribute - ellipse connected to ellipse
derived attribute - dashed ellipse
EmailAddress
AdmissionYear
Program
Student
RollNumber
StudName
Lname
Fname Mname
Sex
Age DateOfBirth
8
Domains of Attributes
Each attributes takes values from a set called its domain
For instance, studentAge – {18,19, …, 55}
HomeAddress – character strings of length 35
Domain of composite attributes –
cross product of domains of component attributes
Domain of multi-valued attributes –
set of subsets of values from the basic domain
9
Entity Sets and Key Attributes
• Key – an attribute or a collection of attributes whose value(s)
uniquely identify an entity in the entity set.
• For instance,
• RollNumber - Key for Student entity set
• EmpID - Key for Faculty entity set
• HostelName, RoomNo - Key for Student entity set
(assuming that each student gets to stay in a single room)
• A key for an entity set may have more than one attribute.
• An entity set may have more than one key.
• Keys can be determined only from the meaning of the
attributes in the entity type.
• Determined by the designers
10
Relationships
• When two or more entities are associated with each other,
we have an instance of a Relationship.
• E.g.: student Ramesh enrolls in Discrete Mathematics course
• Relationship enrolls has Student and Course as the
participating entities.
• Formally, enrolls ⊆ Student × Course
• (s,c) ∈ enrolls ⇔ Student ‘s’ has enrolled in Course ‘c’
• Tuples in enrolls – relationship instances
• enrolls is called a relationship Type/Set.
11
Degree of a relationship
• Degree : the number of participating entities.
• Degree 2: binary
• Degree 3: ternary
• Degree n: n-ary
• Recursive relationship: An entity set relating to itself
gives rise to a recursive relationship
• E.g., the relationship prerequisiteOf is an example of a
recursive relationship on the entity Course
12
Diagrammatic Notation for Relationships
ƒ Relationship – diamond shaped box
ƒ Rectangle of each participating entity is connected by a line to
this diamond. Name of the relationship is written in the box.
A
C
B
R
13
Binary Relationships and Cardinality Ratio
E1
E2
R
• The number of entities from E2 that an entity from E1 can
possibly be associated thru R (and vice-versa) determines
the cardinality ratio of R.
• Four possibilities are usually specified:
• one-to-one (1:1)
• one-to-many (1:N)
• many-to-one (N:1)
• many-to-many (M:N)
M N
14
Cardinality Ratios
• One-to-one: An E1 entity may be associated with at
most one E2 entity and similarly
an E2 entity may be associated with at
most one E1 entity.
• One-to-many: An E1 entity may be associated with
many E2 entities whereas an E2 entity may
be associated with at most one E1 entity.
• Many-to-one: … ( similar to above)
• Many-to-many: Many E1 entities may be associated with a
single E2 entity and a single E1 entity
may be associated with many E2 entities.
15
Cardinality Ratio – example (one-to-one)
Teaches
ResidesIn
Professor Course
CourseID Name
Phone
Name
Sex
Address
Name
RollNo
Address
Student
Hostel
Room
HostelName
RoomNo
1 1
1 1
Credits
16
Cardinality Ratio – example (many-to-one/one-to-many)
belongsTo
guides
Professor Department
Name Location
Phone
Name
Sex
Address
Name
Sex
Address
Professor
Student
Name RoomNo
1 N
N 1
Phone
Address (one-to-many)
(many-to-one)
17
Cardinality Ratio – example (many-to-many)
Student Course
enrolls
Name RollNo
Address
Name
CourseId
Credits
Professor
Sex
Name Phone
Address
SponsoredProject
Name Sponser
Value Duration
Start
Date
End
Date
worksFor
M N
M N
18
Participation Constraints
• An entity set may participate in a relation either totally or
partially.
• Total participation: Every entity in the set is involved in
some association (or tuple) of the relationship.
• Partial participation: Not all entities in the set are involved
in association (or tuples) of the relationship.
Notation:
E1 E2
R
total partial
19
Example of total/partial Participation
belongsTo
guides
Professor Department
Name Location
Phone
Name
Sex
Address
Name
Sex
Address
Professor
Student
Name RoomNo
1 N
N 1
Phone
Address
one-to-many
(many-to-one)
20
Structural Constraints
• Cardinality Ratio and Participation Constraints are together
called Structural Constraints.
• They are called constraints as the data must satisfy them to be
consistent with the requirements.
• Min-Max notation: pair of numbers (m,n) placed on the line
connecting an entity to the relationship.
• m: the minimum number of times a particular entity must
appear in the relationship tuples at any point of time
• 0 – partial participation
• ≥ 1 – total participation
• n: similarly, the maximum number of times a particular entity
can appear in the relationship tuples at any point of time
21
Comparing the Notations
E1 E2
R
E1 E2
R
N 1
(1,1) (0,N)
is equivalent to
22
Attributes for Relationship Types
Relationship types can also have attributes.
ƒ properties of the association of entities.
Example:
Student Course
enrolls
Grade
M N
ƒ grade gives the letter grade (S,A,B, etc.) earned by
the student for a course.
ƒ neither an attribute of student nor that of course.
23
Weak Entity Sets
Weak Entity Set: An entity set whose members owe their
existence to some entity in a strong entity set.
ƒ entities are not of independent existence.
ƒ each weak entity is associated with some entity of the
owner entity set through a special relationship.
ƒ weak entity set may not have a key attribute.
S
Owner entity
Identifying relationship
Always total
W
R
Double wall
box
24
Weak Entity Sets - Example
Course Section
has
Section
Name
CourseID
Credits
SectionNo
Year
SemesterNo
RoomNo
ClassTime
Professor
A popular course may have
several sections each taught
by a different professor and
having its own class room
and meeting times
Partial key:
Uniquely identifies a section
among the set of sections
of a particular course
25
Complete Example for E/R schema: Specifications (1/2)
In an educational institute, there are several departments and
students belong to one of them. Each department has a unique
department number, a name, a location, phone number and is
headed by a professor. Professors have a unique employee Id,
name, phone number.
We like to keep track of the following details regarding students:
name, unique roll number, sex, phone number, date of birth,
age and one or more email addresses. Students have a local
address consisting of the hostel name and the room number.
They also have home address consisting of house number,
street, city and PIN. It is assumed that all students reside in the
hostels.
26
Complete Example for E/R schema: Specifications (2/2)
A course taught in a semester of the year is called a section. There
can be several sections of the same course in a semester; these
are identified by the section number. Each section is taught by a
different professor and has its own timings and a room to meet.
Students enroll for several sections in a semester.
Each course has a name, number of credits and the department that
offers it. A course may have other courses as pre-requisites i.e,
courses to be completed before it can be enrolled in.
Professors also undertake research projects. These are sponsored
by funding agencies and have a specific start date, end date and
amount of money given. More than one professor can be
involved in a project. Also a professor may be simultaneously
working on several projects. A project has a unique projectId.
27
Student
Name
RollNo
Address
Street
City
HNo
LocalAddress
HostelName
RoomNo
EmailId
Age
DateOfBirth
Entities - Student
PIN
28
Entities – Department and Course
Department
Name
Location
Phone
HOD
Course
CourseID
Credits
Name
DeptNo
29
Professor
Name
ProfID
PhoneNumber
Project Sponsor
Amount
EndDate
StartDate
Section
ClassRoom
SectionID
Entities – Professor, Project and Sections
Timing
ProjectId
30
E/R Diagram showing relationships
Student Department
Course Professor
works
On
Project
hasSection
Section
prerequisite
Of
teaches
enrolls works
For
belongs
To
N 1
N
N
N
N
N
N
M
M M
1
1
1
offers
1
N
31
Design Choices: Attribute versus Relationship
• Should offering department be an attribute of a course or
should we create a relationship between Course and Dept
entities called, say, offers ?
• Later approach is preferable when the necessary entity,
in this case the Department, already exists.
• Should class room be an attribute of Section or
should we create an entity called ClassRoom and
have a relationship, say, meetsIn,
connecting Section and ClassRoom?
• In this case, the option of making classRoom as an attribute
of Section is better as we do not want to give a lot of
importance to class room and make it a an entity.
32
Design Choices:
Weak entity versus composite multi-valued attributes
• Note that section could be a composite multi-valued attribute
of Course entity.
• However, if so, section can not participate in relationships,
such as, enrolls with Student entity.
• In general, if a thing, even though not of independent existence,
participates in other relationships on its own, it is best
captured as a weak entity.
• If the above is not the case, composite multi-valued
attribute may be enough.
33
Ternary Relationships
Relationship instance (c, p, j) indicates that
company c supplies a component p that is made use of by the project j
Company Component
Project
supply
serves uses
canSupply
The binary
relationships
together do not
convey the
same meaning
as supply

Mais conteúdo relacionado

Semelhante a ERModel1.pdf

Semelhante a ERModel1.pdf (20)

ERD(2).ppt
ERD(2).pptERD(2).ppt
ERD(2).ppt
 
10287 lecture5(2)
10287 lecture5(2)10287 lecture5(2)
10287 lecture5(2)
 
Data base lec3 (erd)
Data base lec3 (erd)Data base lec3 (erd)
Data base lec3 (erd)
 
Db lec 02_new
Db lec 02_newDb lec 02_new
Db lec 02_new
 
Unit iv dbms
Unit   iv dbmsUnit   iv dbms
Unit iv dbms
 
ER diagram powerpoint
ER diagram powerpointER diagram powerpoint
ER diagram powerpoint
 
Database Design and Entity relationship Model.pptx
Database Design and Entity relationship Model.pptxDatabase Design and Entity relationship Model.pptx
Database Design and Entity relationship Model.pptx
 
erdiagramspresentation-150826044953-lva1-app6891.pdf
erdiagramspresentation-150826044953-lva1-app6891.pdferdiagramspresentation-150826044953-lva1-app6891.pdf
erdiagramspresentation-150826044953-lva1-app6891.pdf
 
3_Relational_Model.pdf
3_Relational_Model.pdf3_Relational_Model.pdf
3_Relational_Model.pdf
 
Er diagrams presentation
Er diagrams presentationEr diagrams presentation
Er diagrams presentation
 
Er diagrams presentation
Er diagrams presentationEr diagrams presentation
Er diagrams presentation
 
entity-relationship-diagram-chen-&-crow -model.ppt
entity-relationship-diagram-chen-&-crow -model.pptentity-relationship-diagram-chen-&-crow -model.ppt
entity-relationship-diagram-chen-&-crow -model.ppt
 
Day 1 SQL.pptx
Day 1 SQL.pptxDay 1 SQL.pptx
Day 1 SQL.pptx
 
SQL.pptx
SQL.pptxSQL.pptx
SQL.pptx
 
ER-Model-ER Diagram
ER-Model-ER DiagramER-Model-ER Diagram
ER-Model-ER Diagram
 
3 relational model
3 relational model3 relational model
3 relational model
 
ER diagram
ER diagramER diagram
ER diagram
 
Desigining of Database - ER Model
Desigining of Database - ER ModelDesigining of Database - ER Model
Desigining of Database - ER Model
 
ER Modeling and Introduction to RDBMS
ER Modeling and Introduction to RDBMSER Modeling and Introduction to RDBMS
ER Modeling and Introduction to RDBMS
 
Data modeling
Data modelingData modeling
Data modeling
 

Último

➥🔝 7737669865 🔝▻ Bangalore Call-girls in Women Seeking Men 🔝Bangalore🔝 Esc...
➥🔝 7737669865 🔝▻ Bangalore Call-girls in Women Seeking Men  🔝Bangalore🔝   Esc...➥🔝 7737669865 🔝▻ Bangalore Call-girls in Women Seeking Men  🔝Bangalore🔝   Esc...
➥🔝 7737669865 🔝▻ Bangalore Call-girls in Women Seeking Men 🔝Bangalore🔝 Esc...amitlee9823
 
Just Call Vip call girls Mysore Escorts ☎️9352988975 Two shot with one girl (...
Just Call Vip call girls Mysore Escorts ☎️9352988975 Two shot with one girl (...Just Call Vip call girls Mysore Escorts ☎️9352988975 Two shot with one girl (...
Just Call Vip call girls Mysore Escorts ☎️9352988975 Two shot with one girl (...gajnagarg
 
👉 Amritsar Call Girl 👉📞 6367187148 👉📞 Just📲 Call Ruhi Call Girl Phone No Amri...
👉 Amritsar Call Girl 👉📞 6367187148 👉📞 Just📲 Call Ruhi Call Girl Phone No Amri...👉 Amritsar Call Girl 👉📞 6367187148 👉📞 Just📲 Call Ruhi Call Girl Phone No Amri...
👉 Amritsar Call Girl 👉📞 6367187148 👉📞 Just📲 Call Ruhi Call Girl Phone No Amri...karishmasinghjnh
 
Call Girls In Hsr Layout ☎ 7737669865 🥵 Book Your One night Stand
Call Girls In Hsr Layout ☎ 7737669865 🥵 Book Your One night StandCall Girls In Hsr Layout ☎ 7737669865 🥵 Book Your One night Stand
Call Girls In Hsr Layout ☎ 7737669865 🥵 Book Your One night Standamitlee9823
 
Chintamani Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangalore ...
Chintamani Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangalore ...Chintamani Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangalore ...
Chintamani Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangalore ...amitlee9823
 
Detecting Credit Card Fraud: A Machine Learning Approach
Detecting Credit Card Fraud: A Machine Learning ApproachDetecting Credit Card Fraud: A Machine Learning Approach
Detecting Credit Card Fraud: A Machine Learning ApproachBoston Institute of Analytics
 
Aspirational Block Program Block Syaldey District - Almora
Aspirational Block Program Block Syaldey District - AlmoraAspirational Block Program Block Syaldey District - Almora
Aspirational Block Program Block Syaldey District - AlmoraGovindSinghDasila
 
Call Girls In Attibele ☎ 7737669865 🥵 Book Your One night Stand
Call Girls In Attibele ☎ 7737669865 🥵 Book Your One night StandCall Girls In Attibele ☎ 7737669865 🥵 Book Your One night Stand
Call Girls In Attibele ☎ 7737669865 🥵 Book Your One night Standamitlee9823
 
Just Call Vip call girls Palakkad Escorts ☎️9352988975 Two shot with one girl...
Just Call Vip call girls Palakkad Escorts ☎️9352988975 Two shot with one girl...Just Call Vip call girls Palakkad Escorts ☎️9352988975 Two shot with one girl...
Just Call Vip call girls Palakkad Escorts ☎️9352988975 Two shot with one girl...gajnagarg
 
Just Call Vip call girls Bellary Escorts ☎️9352988975 Two shot with one girl ...
Just Call Vip call girls Bellary Escorts ☎️9352988975 Two shot with one girl ...Just Call Vip call girls Bellary Escorts ☎️9352988975 Two shot with one girl ...
Just Call Vip call girls Bellary Escorts ☎️9352988975 Two shot with one girl ...gajnagarg
 
Escorts Service Kumaraswamy Layout ☎ 7737669865☎ Book Your One night Stand (B...
Escorts Service Kumaraswamy Layout ☎ 7737669865☎ Book Your One night Stand (B...Escorts Service Kumaraswamy Layout ☎ 7737669865☎ Book Your One night Stand (B...
Escorts Service Kumaraswamy Layout ☎ 7737669865☎ Book Your One night Stand (B...amitlee9823
 
➥🔝 7737669865 🔝▻ Sambalpur Call-girls in Women Seeking Men 🔝Sambalpur🔝 Esc...
➥🔝 7737669865 🔝▻ Sambalpur Call-girls in Women Seeking Men  🔝Sambalpur🔝   Esc...➥🔝 7737669865 🔝▻ Sambalpur Call-girls in Women Seeking Men  🔝Sambalpur🔝   Esc...
➥🔝 7737669865 🔝▻ Sambalpur Call-girls in Women Seeking Men 🔝Sambalpur🔝 Esc...amitlee9823
 
Thane Call Girls 7091864438 Call Girls in Thane Escort service book now -
Thane Call Girls 7091864438 Call Girls in Thane Escort service book now -Thane Call Girls 7091864438 Call Girls in Thane Escort service book now -
Thane Call Girls 7091864438 Call Girls in Thane Escort service book now -Pooja Nehwal
 
Vip Mumbai Call Girls Marol Naka Call On 9920725232 With Body to body massage...
Vip Mumbai Call Girls Marol Naka Call On 9920725232 With Body to body massage...Vip Mumbai Call Girls Marol Naka Call On 9920725232 With Body to body massage...
Vip Mumbai Call Girls Marol Naka Call On 9920725232 With Body to body massage...amitlee9823
 
Call Girls Jalahalli Just Call 👗 7737669865 👗 Top Class Call Girl Service Ban...
Call Girls Jalahalli Just Call 👗 7737669865 👗 Top Class Call Girl Service Ban...Call Girls Jalahalli Just Call 👗 7737669865 👗 Top Class Call Girl Service Ban...
Call Girls Jalahalli Just Call 👗 7737669865 👗 Top Class Call Girl Service Ban...amitlee9823
 
➥🔝 7737669865 🔝▻ Ongole Call-girls in Women Seeking Men 🔝Ongole🔝 Escorts S...
➥🔝 7737669865 🔝▻ Ongole Call-girls in Women Seeking Men  🔝Ongole🔝   Escorts S...➥🔝 7737669865 🔝▻ Ongole Call-girls in Women Seeking Men  🔝Ongole🔝   Escorts S...
➥🔝 7737669865 🔝▻ Ongole Call-girls in Women Seeking Men 🔝Ongole🔝 Escorts S...amitlee9823
 
➥🔝 7737669865 🔝▻ Dindigul Call-girls in Women Seeking Men 🔝Dindigul🔝 Escor...
➥🔝 7737669865 🔝▻ Dindigul Call-girls in Women Seeking Men  🔝Dindigul🔝   Escor...➥🔝 7737669865 🔝▻ Dindigul Call-girls in Women Seeking Men  🔝Dindigul🔝   Escor...
➥🔝 7737669865 🔝▻ Dindigul Call-girls in Women Seeking Men 🔝Dindigul🔝 Escor...amitlee9823
 
Jual Obat Aborsi Surabaya ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
Jual Obat Aborsi Surabaya ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...Jual Obat Aborsi Surabaya ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
Jual Obat Aborsi Surabaya ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...ZurliaSoop
 

Último (20)

➥🔝 7737669865 🔝▻ Bangalore Call-girls in Women Seeking Men 🔝Bangalore🔝 Esc...
➥🔝 7737669865 🔝▻ Bangalore Call-girls in Women Seeking Men  🔝Bangalore🔝   Esc...➥🔝 7737669865 🔝▻ Bangalore Call-girls in Women Seeking Men  🔝Bangalore🔝   Esc...
➥🔝 7737669865 🔝▻ Bangalore Call-girls in Women Seeking Men 🔝Bangalore🔝 Esc...
 
Just Call Vip call girls Mysore Escorts ☎️9352988975 Two shot with one girl (...
Just Call Vip call girls Mysore Escorts ☎️9352988975 Two shot with one girl (...Just Call Vip call girls Mysore Escorts ☎️9352988975 Two shot with one girl (...
Just Call Vip call girls Mysore Escorts ☎️9352988975 Two shot with one girl (...
 
👉 Amritsar Call Girl 👉📞 6367187148 👉📞 Just📲 Call Ruhi Call Girl Phone No Amri...
👉 Amritsar Call Girl 👉📞 6367187148 👉📞 Just📲 Call Ruhi Call Girl Phone No Amri...👉 Amritsar Call Girl 👉📞 6367187148 👉📞 Just📲 Call Ruhi Call Girl Phone No Amri...
👉 Amritsar Call Girl 👉📞 6367187148 👉📞 Just📲 Call Ruhi Call Girl Phone No Amri...
 
Call Girls In Hsr Layout ☎ 7737669865 🥵 Book Your One night Stand
Call Girls In Hsr Layout ☎ 7737669865 🥵 Book Your One night StandCall Girls In Hsr Layout ☎ 7737669865 🥵 Book Your One night Stand
Call Girls In Hsr Layout ☎ 7737669865 🥵 Book Your One night Stand
 
Chintamani Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangalore ...
Chintamani Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangalore ...Chintamani Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangalore ...
Chintamani Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangalore ...
 
Detecting Credit Card Fraud: A Machine Learning Approach
Detecting Credit Card Fraud: A Machine Learning ApproachDetecting Credit Card Fraud: A Machine Learning Approach
Detecting Credit Card Fraud: A Machine Learning Approach
 
Aspirational Block Program Block Syaldey District - Almora
Aspirational Block Program Block Syaldey District - AlmoraAspirational Block Program Block Syaldey District - Almora
Aspirational Block Program Block Syaldey District - Almora
 
Call Girls In Attibele ☎ 7737669865 🥵 Book Your One night Stand
Call Girls In Attibele ☎ 7737669865 🥵 Book Your One night StandCall Girls In Attibele ☎ 7737669865 🥵 Book Your One night Stand
Call Girls In Attibele ☎ 7737669865 🥵 Book Your One night Stand
 
Just Call Vip call girls Palakkad Escorts ☎️9352988975 Two shot with one girl...
Just Call Vip call girls Palakkad Escorts ☎️9352988975 Two shot with one girl...Just Call Vip call girls Palakkad Escorts ☎️9352988975 Two shot with one girl...
Just Call Vip call girls Palakkad Escorts ☎️9352988975 Two shot with one girl...
 
Just Call Vip call girls Bellary Escorts ☎️9352988975 Two shot with one girl ...
Just Call Vip call girls Bellary Escorts ☎️9352988975 Two shot with one girl ...Just Call Vip call girls Bellary Escorts ☎️9352988975 Two shot with one girl ...
Just Call Vip call girls Bellary Escorts ☎️9352988975 Two shot with one girl ...
 
Escorts Service Kumaraswamy Layout ☎ 7737669865☎ Book Your One night Stand (B...
Escorts Service Kumaraswamy Layout ☎ 7737669865☎ Book Your One night Stand (B...Escorts Service Kumaraswamy Layout ☎ 7737669865☎ Book Your One night Stand (B...
Escorts Service Kumaraswamy Layout ☎ 7737669865☎ Book Your One night Stand (B...
 
Abortion pills in Doha Qatar (+966572737505 ! Get Cytotec
Abortion pills in Doha Qatar (+966572737505 ! Get CytotecAbortion pills in Doha Qatar (+966572737505 ! Get Cytotec
Abortion pills in Doha Qatar (+966572737505 ! Get Cytotec
 
➥🔝 7737669865 🔝▻ Sambalpur Call-girls in Women Seeking Men 🔝Sambalpur🔝 Esc...
➥🔝 7737669865 🔝▻ Sambalpur Call-girls in Women Seeking Men  🔝Sambalpur🔝   Esc...➥🔝 7737669865 🔝▻ Sambalpur Call-girls in Women Seeking Men  🔝Sambalpur🔝   Esc...
➥🔝 7737669865 🔝▻ Sambalpur Call-girls in Women Seeking Men 🔝Sambalpur🔝 Esc...
 
Predicting Loan Approval: A Data Science Project
Predicting Loan Approval: A Data Science ProjectPredicting Loan Approval: A Data Science Project
Predicting Loan Approval: A Data Science Project
 
Thane Call Girls 7091864438 Call Girls in Thane Escort service book now -
Thane Call Girls 7091864438 Call Girls in Thane Escort service book now -Thane Call Girls 7091864438 Call Girls in Thane Escort service book now -
Thane Call Girls 7091864438 Call Girls in Thane Escort service book now -
 
Vip Mumbai Call Girls Marol Naka Call On 9920725232 With Body to body massage...
Vip Mumbai Call Girls Marol Naka Call On 9920725232 With Body to body massage...Vip Mumbai Call Girls Marol Naka Call On 9920725232 With Body to body massage...
Vip Mumbai Call Girls Marol Naka Call On 9920725232 With Body to body massage...
 
Call Girls Jalahalli Just Call 👗 7737669865 👗 Top Class Call Girl Service Ban...
Call Girls Jalahalli Just Call 👗 7737669865 👗 Top Class Call Girl Service Ban...Call Girls Jalahalli Just Call 👗 7737669865 👗 Top Class Call Girl Service Ban...
Call Girls Jalahalli Just Call 👗 7737669865 👗 Top Class Call Girl Service Ban...
 
➥🔝 7737669865 🔝▻ Ongole Call-girls in Women Seeking Men 🔝Ongole🔝 Escorts S...
➥🔝 7737669865 🔝▻ Ongole Call-girls in Women Seeking Men  🔝Ongole🔝   Escorts S...➥🔝 7737669865 🔝▻ Ongole Call-girls in Women Seeking Men  🔝Ongole🔝   Escorts S...
➥🔝 7737669865 🔝▻ Ongole Call-girls in Women Seeking Men 🔝Ongole🔝 Escorts S...
 
➥🔝 7737669865 🔝▻ Dindigul Call-girls in Women Seeking Men 🔝Dindigul🔝 Escor...
➥🔝 7737669865 🔝▻ Dindigul Call-girls in Women Seeking Men  🔝Dindigul🔝   Escor...➥🔝 7737669865 🔝▻ Dindigul Call-girls in Women Seeking Men  🔝Dindigul🔝   Escor...
➥🔝 7737669865 🔝▻ Dindigul Call-girls in Women Seeking Men 🔝Dindigul🔝 Escor...
 
Jual Obat Aborsi Surabaya ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
Jual Obat Aborsi Surabaya ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...Jual Obat Aborsi Surabaya ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
Jual Obat Aborsi Surabaya ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
 

ERModel1.pdf

  • 1. Entity-Relationship (E/R) Model ITEC - 514/515: Database Systems Courtesy: Prof. P. Sreenivasa Kumar CS&E Dept., IIT, Madras Bisharat Memon, Lecturer, IICT, UoS, Jamshoro
  • 2. 2 Entity-Relationship (E/R) Model ƒ Widely used conceptual level data model • proposed by Peter P Chen in 1970s ƒ Data model to describe the database system at the requirements collection stage • high level description. • easy to understand for the enterprise managers. • rigorous enough to be used for system building. ƒ Concepts available in the model • entities and attributes of entities. • relationships between entities. • diagrammatic notation.
  • 3. 3 Entities ƒ Entity - a thing (animate or inanimate) of independent physical or conceptual existence and distinguishable. In the University database context, an individual student, faculty member, a class room, a course are entities. ƒ Entity Set or Entity Type- Collection of entities all having the same properties. Student entity set – collection of all student entities. Course entity set – collection of all course entities.
  • 4. 4 Attributes Each entity is described by a set of attributes/properties. student entity ƒ StudName – name of the student. ƒ RollNumber – the roll number of the student. ƒ Sex – the gender of the student etc. All entities in an Entity set/type have the same set of attributes. Chosen set of attributes – amount of detail in modeling.
  • 5. 5 Types of Attributes (1/2) • Simple Attributes ƒ having atomic or indivisible values. example: Dept – a string PhoneNumber – an eight digit number • Composite Attributes ƒ having several components in the value. example: Qualification with components (DegreeName, Year, UniversityName) • Derived Attributes ƒ Attribute value is dependent on some other attribute. example: Age depends on DateOf Birth. So age is a derived attribute.
  • 6. 6 Types of Attributes (2/2) • Single-valued ƒ having only one value rather than a set of values. ƒ for instance, PlaceOfBirth – single string value. • Multi-valued ƒ having a set of values rather than a single value. ƒ for instance, CoursesEnrolled attribute for student EmailAddress attribute for student PreviousDegree attribute for student. • Attributes can be: ƒ simple single-valued, simple multi-valued, ƒ composite single-valued or composite multi-valued.
  • 7. 7 Diagrammatic Notation for Entities entity - rectangle attribute - ellipse connected to rectangle multi-valued attribute - double ellipse composite attribute - ellipse connected to ellipse derived attribute - dashed ellipse EmailAddress AdmissionYear Program Student RollNumber StudName Lname Fname Mname Sex Age DateOfBirth
  • 8. 8 Domains of Attributes Each attributes takes values from a set called its domain For instance, studentAge – {18,19, …, 55} HomeAddress – character strings of length 35 Domain of composite attributes – cross product of domains of component attributes Domain of multi-valued attributes – set of subsets of values from the basic domain
  • 9. 9 Entity Sets and Key Attributes • Key – an attribute or a collection of attributes whose value(s) uniquely identify an entity in the entity set. • For instance, • RollNumber - Key for Student entity set • EmpID - Key for Faculty entity set • HostelName, RoomNo - Key for Student entity set (assuming that each student gets to stay in a single room) • A key for an entity set may have more than one attribute. • An entity set may have more than one key. • Keys can be determined only from the meaning of the attributes in the entity type. • Determined by the designers
  • 10. 10 Relationships • When two or more entities are associated with each other, we have an instance of a Relationship. • E.g.: student Ramesh enrolls in Discrete Mathematics course • Relationship enrolls has Student and Course as the participating entities. • Formally, enrolls ⊆ Student × Course • (s,c) ∈ enrolls ⇔ Student ‘s’ has enrolled in Course ‘c’ • Tuples in enrolls – relationship instances • enrolls is called a relationship Type/Set.
  • 11. 11 Degree of a relationship • Degree : the number of participating entities. • Degree 2: binary • Degree 3: ternary • Degree n: n-ary • Recursive relationship: An entity set relating to itself gives rise to a recursive relationship • E.g., the relationship prerequisiteOf is an example of a recursive relationship on the entity Course
  • 12. 12 Diagrammatic Notation for Relationships ƒ Relationship – diamond shaped box ƒ Rectangle of each participating entity is connected by a line to this diamond. Name of the relationship is written in the box. A C B R
  • 13. 13 Binary Relationships and Cardinality Ratio E1 E2 R • The number of entities from E2 that an entity from E1 can possibly be associated thru R (and vice-versa) determines the cardinality ratio of R. • Four possibilities are usually specified: • one-to-one (1:1) • one-to-many (1:N) • many-to-one (N:1) • many-to-many (M:N) M N
  • 14. 14 Cardinality Ratios • One-to-one: An E1 entity may be associated with at most one E2 entity and similarly an E2 entity may be associated with at most one E1 entity. • One-to-many: An E1 entity may be associated with many E2 entities whereas an E2 entity may be associated with at most one E1 entity. • Many-to-one: … ( similar to above) • Many-to-many: Many E1 entities may be associated with a single E2 entity and a single E1 entity may be associated with many E2 entities.
  • 15. 15 Cardinality Ratio – example (one-to-one) Teaches ResidesIn Professor Course CourseID Name Phone Name Sex Address Name RollNo Address Student Hostel Room HostelName RoomNo 1 1 1 1 Credits
  • 16. 16 Cardinality Ratio – example (many-to-one/one-to-many) belongsTo guides Professor Department Name Location Phone Name Sex Address Name Sex Address Professor Student Name RoomNo 1 N N 1 Phone Address (one-to-many) (many-to-one)
  • 17. 17 Cardinality Ratio – example (many-to-many) Student Course enrolls Name RollNo Address Name CourseId Credits Professor Sex Name Phone Address SponsoredProject Name Sponser Value Duration Start Date End Date worksFor M N M N
  • 18. 18 Participation Constraints • An entity set may participate in a relation either totally or partially. • Total participation: Every entity in the set is involved in some association (or tuple) of the relationship. • Partial participation: Not all entities in the set are involved in association (or tuples) of the relationship. Notation: E1 E2 R total partial
  • 19. 19 Example of total/partial Participation belongsTo guides Professor Department Name Location Phone Name Sex Address Name Sex Address Professor Student Name RoomNo 1 N N 1 Phone Address one-to-many (many-to-one)
  • 20. 20 Structural Constraints • Cardinality Ratio and Participation Constraints are together called Structural Constraints. • They are called constraints as the data must satisfy them to be consistent with the requirements. • Min-Max notation: pair of numbers (m,n) placed on the line connecting an entity to the relationship. • m: the minimum number of times a particular entity must appear in the relationship tuples at any point of time • 0 – partial participation • ≥ 1 – total participation • n: similarly, the maximum number of times a particular entity can appear in the relationship tuples at any point of time
  • 21. 21 Comparing the Notations E1 E2 R E1 E2 R N 1 (1,1) (0,N) is equivalent to
  • 22. 22 Attributes for Relationship Types Relationship types can also have attributes. ƒ properties of the association of entities. Example: Student Course enrolls Grade M N ƒ grade gives the letter grade (S,A,B, etc.) earned by the student for a course. ƒ neither an attribute of student nor that of course.
  • 23. 23 Weak Entity Sets Weak Entity Set: An entity set whose members owe their existence to some entity in a strong entity set. ƒ entities are not of independent existence. ƒ each weak entity is associated with some entity of the owner entity set through a special relationship. ƒ weak entity set may not have a key attribute. S Owner entity Identifying relationship Always total W R Double wall box
  • 24. 24 Weak Entity Sets - Example Course Section has Section Name CourseID Credits SectionNo Year SemesterNo RoomNo ClassTime Professor A popular course may have several sections each taught by a different professor and having its own class room and meeting times Partial key: Uniquely identifies a section among the set of sections of a particular course
  • 25. 25 Complete Example for E/R schema: Specifications (1/2) In an educational institute, there are several departments and students belong to one of them. Each department has a unique department number, a name, a location, phone number and is headed by a professor. Professors have a unique employee Id, name, phone number. We like to keep track of the following details regarding students: name, unique roll number, sex, phone number, date of birth, age and one or more email addresses. Students have a local address consisting of the hostel name and the room number. They also have home address consisting of house number, street, city and PIN. It is assumed that all students reside in the hostels.
  • 26. 26 Complete Example for E/R schema: Specifications (2/2) A course taught in a semester of the year is called a section. There can be several sections of the same course in a semester; these are identified by the section number. Each section is taught by a different professor and has its own timings and a room to meet. Students enroll for several sections in a semester. Each course has a name, number of credits and the department that offers it. A course may have other courses as pre-requisites i.e, courses to be completed before it can be enrolled in. Professors also undertake research projects. These are sponsored by funding agencies and have a specific start date, end date and amount of money given. More than one professor can be involved in a project. Also a professor may be simultaneously working on several projects. A project has a unique projectId.
  • 28. 28 Entities – Department and Course Department Name Location Phone HOD Course CourseID Credits Name DeptNo
  • 30. 30 E/R Diagram showing relationships Student Department Course Professor works On Project hasSection Section prerequisite Of teaches enrolls works For belongs To N 1 N N N N N N M M M 1 1 1 offers 1 N
  • 31. 31 Design Choices: Attribute versus Relationship • Should offering department be an attribute of a course or should we create a relationship between Course and Dept entities called, say, offers ? • Later approach is preferable when the necessary entity, in this case the Department, already exists. • Should class room be an attribute of Section or should we create an entity called ClassRoom and have a relationship, say, meetsIn, connecting Section and ClassRoom? • In this case, the option of making classRoom as an attribute of Section is better as we do not want to give a lot of importance to class room and make it a an entity.
  • 32. 32 Design Choices: Weak entity versus composite multi-valued attributes • Note that section could be a composite multi-valued attribute of Course entity. • However, if so, section can not participate in relationships, such as, enrolls with Student entity. • In general, if a thing, even though not of independent existence, participates in other relationships on its own, it is best captured as a weak entity. • If the above is not the case, composite multi-valued attribute may be enough.
  • 33. 33 Ternary Relationships Relationship instance (c, p, j) indicates that company c supplies a component p that is made use of by the project j Company Component Project supply serves uses canSupply The binary relationships together do not convey the same meaning as supply