SlideShare a Scribd company logo
1 of 28
Cardinality & Participation
Constraint in DBMS
Constraints
Relationship types usually have certain constraints that
limit the possible combinations of entities that may
participate in the corresponding relationship set.
Constraints ?
Why to use Constraints ?
• To limit the type of data that can go into a table
• To maintain the accuracy and integrity of the data inside table.
Most used constraints:
• NOT NULL
• UNIQUE
• PRIMARY KEY
• FOREIGN KEY
• CHECK
• DEFAULT
Type of Constraints
We can distinguish two main types of relationship
constraints:
•Cardinality constraints
•Participation constraints
Employee DepartmentWork for
Entity Relationship type
Entity
Every relation in relationship type is an association between employee
and department
Requirement Analysis:
• Every employee work for one department
• An department can have many employees
• New department need not have employee
Degree:
In every relationship how many entities are participating.
E1
E2
E3
E4
E5
E6
D1
D2
D3
1
2
3
4
5
6
employee
Work for Department
Degree-2(binary)
Work For
Work For
Employee
Department
Employee Department
1N
(1,1) (0,N)
Min/Max Representation
ER diagram
More info could be represented using MIN/Max Method
E1
E2
E3
E4
1
2
3
4
D1
D2
D3
D4
Employee Manager Department
Degree-2(binary)
Every Department should have a manager & only one employee manages a department.
An Employee can manage only one department.
Requirement Analysis:
Cardinality
My Cardinal Is Bigger Than Yours
Cardinality
The term cardinality actually has two different meanings
depending on the context of it’s usage – one meaning is in the
context of Data modeling and the other meaning is in the
context of SQL statements.
Relationship one table can have with another table
In The Context Of Data Modeling
It simply refers to the relationship that one table can have
with another table.
These relationships include: many-to-many, many-to-
one/one-to-many, or one-to-one – whichever one of these
characteristics a table has in relationship with another table is
said to be the cardinality of that table.
Example:
Suppose we have three tables that are used by a company to store employee
information: an Employee table, an Employee_Salary table, and a Department
table.
The Department table will have a one to many relationship with the Employee
table, because every employee can belong to only one department, but a
department can consist of many employees.
In other words, the cardinality of the Department table in relationship to the
employee table is one to many.
The cardinality of the Employee table in relationship to the Employee_Salary
table will be one to one, since an employee can only have one salary, and vice
versa.
There are three degrees of Cardinality, known as:
• One-to-One (1:1):One occurrence of an entity relates to only one occurrence in
another entity.
• One-to-Many (1:M): One occurrence in an entity relates to many occurrences
in another entity.
• Many-to-Many (M:N) Many occurrences in an entity relate to many
occurrences in another entity.
Cardinality in SQL
Uniqueness of data
Cardinality in SQL
Cardinality refers to the uniqueness of data contained in a
column.
If a column has a lot of duplicate data (e.g. a column that
stores either "true" or "false"), it has low cardinality,
but if the values are highly unique (e.g. Social Security
numbers), it has high cardinality.
For example, let’s say we have a table with a “Gender”
column which has only two possible values of “Male” and
“Female”.
Then, that “Gender” column would have a cardinality of 2,
because there are only two unique values that could possibly
appear in that column .
Let’s say that we have a primary key column on
a table with 10,000 rows. What do you think the
cardinality of that column would be?
Primary key: It is a key in a relational database that is unique for
each record.
It is 10,000.
Because it is a primary key column, we know that all of the
values in the column must be unique.
Cardinality of a primary key column will always be
equal to the number of records in the same table.
Participation Constraint
Participation Constraint
There are two types of participation constraints—total and partial.
The participation of an entity set E in a relationship set R is said to be
total if every entity in E participates in at least one relationship in R.
If only some entities in E participate in relationships in R, the
participation of entity set E in relationship R is said to be partial.
ER model
Double line indicates the total participation
constraint in an ER model.
Single line indicates the partial participation
constraint in an ER model.
Cardinality Constraints : At most
Participation Constraints : At least or Minimum
ConstraintsCardinality Participation
Data
modeling
SQL
statements
One-to-One
One-to-Many
Many-to-Many
low
cardinality
high
cardinality
TotalPartial
Cardinality and participation constraints

More Related Content

What's hot

Relational algebra in dbms
Relational algebra in dbmsRelational algebra in dbms
Relational algebra in dbms
shekhar1991
 
Enhanced E-R diagram
Enhanced E-R diagramEnhanced E-R diagram
Enhanced E-R diagram
Mayank Jain
 

What's hot (20)

Databases: Normalisation
Databases: NormalisationDatabases: Normalisation
Databases: Normalisation
 
Enhanced Entity-Relationship (EER) Modeling
Enhanced Entity-Relationship (EER) ModelingEnhanced Entity-Relationship (EER) Modeling
Enhanced Entity-Relationship (EER) Modeling
 
Dbms normalization
Dbms normalizationDbms normalization
Dbms normalization
 
ER-Model-ER Diagram
ER-Model-ER DiagramER-Model-ER Diagram
ER-Model-ER Diagram
 
Relational Data Model Introduction
Relational Data Model IntroductionRelational Data Model Introduction
Relational Data Model Introduction
 
Functional dependencies in Database Management System
Functional dependencies in Database Management SystemFunctional dependencies in Database Management System
Functional dependencies in Database Management System
 
EER modeling
EER modelingEER modeling
EER modeling
 
ER Model in DBMS
ER Model in DBMSER Model in DBMS
ER Model in DBMS
 
Relational model
Relational modelRelational model
Relational model
 
Normal forms
Normal formsNormal forms
Normal forms
 
Relational algebra in dbms
Relational algebra in dbmsRelational algebra in dbms
Relational algebra in dbms
 
Anomalies in database
Anomalies in databaseAnomalies in database
Anomalies in database
 
Relational algebra (basics)
Relational algebra (basics)Relational algebra (basics)
Relational algebra (basics)
 
Normalization in DBMS
Normalization in DBMSNormalization in DBMS
Normalization in DBMS
 
Normalization | (1NF) |(2NF) (3NF)|BCNF| 4NF |5NF
Normalization | (1NF) |(2NF) (3NF)|BCNF| 4NF |5NFNormalization | (1NF) |(2NF) (3NF)|BCNF| 4NF |5NF
Normalization | (1NF) |(2NF) (3NF)|BCNF| 4NF |5NF
 
ER MODEL
ER MODELER MODEL
ER MODEL
 
Enhanced E-R diagram
Enhanced E-R diagramEnhanced E-R diagram
Enhanced E-R diagram
 
Fifth normal form
Fifth normal formFifth normal form
Fifth normal form
 
Er model ppt
Er model pptEr model ppt
Er model ppt
 
Relational algebra in dbms
Relational algebra in dbmsRelational algebra in dbms
Relational algebra in dbms
 

Viewers also liked

3. Relational Models in DBMS
3. Relational Models in DBMS3. Relational Models in DBMS
3. Relational Models in DBMS
koolkampus
 
4 the relational data model and relational database constraints
4 the relational data model and relational database constraints4 the relational data model and relational database constraints
4 the relational data model and relational database constraints
Kumar
 
14. Query Optimization in DBMS
14. Query Optimization in DBMS14. Query Optimization in DBMS
14. Query Optimization in DBMS
koolkampus
 

Viewers also liked (14)

Urinary system embryology
Urinary system embryologyUrinary system embryology
Urinary system embryology
 
The relational data model part[1]
The relational data model part[1]The relational data model part[1]
The relational data model part[1]
 
3. Relational Models in DBMS
3. Relational Models in DBMS3. Relational Models in DBMS
3. Relational Models in DBMS
 
Denormalization
DenormalizationDenormalization
Denormalization
 
Introduction to RDBMS
Introduction to RDBMSIntroduction to RDBMS
Introduction to RDBMS
 
Introduction to Software - Coder Forge - John Mulhall
Introduction to Software - Coder Forge - John MulhallIntroduction to Software - Coder Forge - John Mulhall
Introduction to Software - Coder Forge - John Mulhall
 
Fundamentals of database system - Relational data model and relational datab...
Fundamentals of database system  - Relational data model and relational datab...Fundamentals of database system  - Relational data model and relational datab...
Fundamentals of database system - Relational data model and relational datab...
 
4 the relational data model and relational database constraints
4 the relational data model and relational database constraints4 the relational data model and relational database constraints
4 the relational data model and relational database constraints
 
Relational database management system (rdbms) i
Relational database management system (rdbms) iRelational database management system (rdbms) i
Relational database management system (rdbms) i
 
Rdbms
RdbmsRdbms
Rdbms
 
RDBMS.ppt
RDBMS.pptRDBMS.ppt
RDBMS.ppt
 
Database : Relational Data Model
Database : Relational Data ModelDatabase : Relational Data Model
Database : Relational Data Model
 
14. Query Optimization in DBMS
14. Query Optimization in DBMS14. Query Optimization in DBMS
14. Query Optimization in DBMS
 
Rdbms
RdbmsRdbms
Rdbms
 

Similar to Cardinality and participation constraints (20)

entityrelationshipmodel.pptx
entityrelationshipmodel.pptxentityrelationshipmodel.pptx
entityrelationshipmodel.pptx
 
Entity Relationship Model
Entity Relationship ModelEntity Relationship Model
Entity Relationship Model
 
Revision ch 3
Revision ch 3Revision ch 3
Revision ch 3
 
ER Digramms by Harshal wagh
ER Digramms by Harshal waghER Digramms by Harshal wagh
ER Digramms by Harshal wagh
 
Computer sec2-1st term
Computer sec2-1st termComputer sec2-1st term
Computer sec2-1st term
 
Entityrelationshipmodel
EntityrelationshipmodelEntityrelationshipmodel
Entityrelationshipmodel
 
ERD(2).ppt
ERD(2).pptERD(2).ppt
ERD(2).ppt
 
Data Models.pptx
Data Models.pptxData Models.pptx
Data Models.pptx
 
UNIT II DBMS.pptx
UNIT II DBMS.pptxUNIT II DBMS.pptx
UNIT II DBMS.pptx
 
rdbmsdol.pptx
rdbmsdol.pptxrdbmsdol.pptx
rdbmsdol.pptx
 
rdbmsdol.pptx
rdbmsdol.pptxrdbmsdol.pptx
rdbmsdol.pptx
 
Er model
Er modelEr model
Er model
 
RELATIONSHIP IN DBMS.pptx
RELATIONSHIP IN DBMS.pptxRELATIONSHIP IN DBMS.pptx
RELATIONSHIP IN DBMS.pptx
 
Sql server ___________session2-data_modeling
Sql server  ___________session2-data_modelingSql server  ___________session2-data_modeling
Sql server ___________session2-data_modeling
 
Database design
Database designDatabase design
Database design
 
Database design
Database designDatabase design
Database design
 
Download different material from slide share
Download different material from slide shareDownload different material from slide share
Download different material from slide share
 
Unit 3 final.pptx
Unit 3 final.pptxUnit 3 final.pptx
Unit 3 final.pptx
 
er-models.pptx
er-models.pptxer-models.pptx
er-models.pptx
 
Databases - Unit 2.pdf
Databases - Unit 2.pdfDatabases - Unit 2.pdf
Databases - Unit 2.pdf
 

More from Nikhil Deswal (6)

Blood donation
Blood donationBlood donation
Blood donation
 
Microbiology
Microbiology Microbiology
Microbiology
 
Working of search engine
Working of search engineWorking of search engine
Working of search engine
 
Linear Algebra's Applications
Linear Algebra's ApplicationsLinear Algebra's Applications
Linear Algebra's Applications
 
Complex Number's Applications
Complex Number's ApplicationsComplex Number's Applications
Complex Number's Applications
 
Fun Science
Fun ScienceFun Science
Fun Science
 

Recently uploaded

Call Girls In Shalimar Bagh ( Delhi) 9953330565 Escorts Service
Call Girls In Shalimar Bagh ( Delhi) 9953330565 Escorts ServiceCall Girls In Shalimar Bagh ( Delhi) 9953330565 Escorts Service
Call Girls In Shalimar Bagh ( Delhi) 9953330565 Escorts Service
9953056974 Low Rate Call Girls In Saket, Delhi NCR
 
Al Barsha Escorts $#$ O565212860 $#$ Escort Service In Al Barsha
Al Barsha Escorts $#$ O565212860 $#$ Escort Service In Al BarshaAl Barsha Escorts $#$ O565212860 $#$ Escort Service In Al Barsha
Al Barsha Escorts $#$ O565212860 $#$ Escort Service In Al Barsha
AroojKhan71
 
CHEAP Call Girls in Saket (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Saket (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICECHEAP Call Girls in Saket (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Saket (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
9953056974 Low Rate Call Girls In Saket, Delhi NCR
 
Mg Road Call Girls Service: 🍓 7737669865 🍓 High Profile Model Escorts | Banga...
Mg Road Call Girls Service: 🍓 7737669865 🍓 High Profile Model Escorts | Banga...Mg Road Call Girls Service: 🍓 7737669865 🍓 High Profile Model Escorts | Banga...
Mg Road Call Girls Service: 🍓 7737669865 🍓 High Profile Model Escorts | Banga...
amitlee9823
 
Call Girls Bannerghatta Road Just Call 👗 7737669865 👗 Top Class Call Girl Ser...
Call Girls Bannerghatta Road Just Call 👗 7737669865 👗 Top Class Call Girl Ser...Call Girls Bannerghatta Road Just Call 👗 7737669865 👗 Top Class Call Girl Ser...
Call Girls Bannerghatta Road Just Call 👗 7737669865 👗 Top Class Call Girl Ser...
amitlee9823
 
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
 

Recently uploaded (20)

BDSM⚡Call Girls in Mandawali Delhi >༒8448380779 Escort Service
BDSM⚡Call Girls in Mandawali Delhi >༒8448380779 Escort ServiceBDSM⚡Call Girls in Mandawali Delhi >༒8448380779 Escort Service
BDSM⚡Call Girls in Mandawali Delhi >༒8448380779 Escort Service
 
Carero dropshipping via API with DroFx.pptx
Carero dropshipping via API with DroFx.pptxCarero dropshipping via API with DroFx.pptx
Carero dropshipping via API with DroFx.pptx
 
Call Girls In Shalimar Bagh ( Delhi) 9953330565 Escorts Service
Call Girls In Shalimar Bagh ( Delhi) 9953330565 Escorts ServiceCall Girls In Shalimar Bagh ( Delhi) 9953330565 Escorts Service
Call Girls In Shalimar Bagh ( Delhi) 9953330565 Escorts Service
 
Al Barsha Escorts $#$ O565212860 $#$ Escort Service In Al Barsha
Al Barsha Escorts $#$ O565212860 $#$ Escort Service In Al BarshaAl Barsha Escorts $#$ O565212860 $#$ Escort Service In Al Barsha
Al Barsha Escorts $#$ O565212860 $#$ Escort Service In Al Barsha
 
CHEAP Call Girls in Saket (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Saket (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICECHEAP Call Girls in Saket (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Saket (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
 
Edukaciniai dropshipping via API with DroFx
Edukaciniai dropshipping via API with DroFxEdukaciniai dropshipping via API with DroFx
Edukaciniai dropshipping via API with DroFx
 
Mg Road Call Girls Service: 🍓 7737669865 🍓 High Profile Model Escorts | Banga...
Mg Road Call Girls Service: 🍓 7737669865 🍓 High Profile Model Escorts | Banga...Mg Road Call Girls Service: 🍓 7737669865 🍓 High Profile Model Escorts | Banga...
Mg Road Call Girls Service: 🍓 7737669865 🍓 High Profile Model Escorts | Banga...
 
Capstone Project on IBM Data Analytics Program
Capstone Project on IBM Data Analytics ProgramCapstone Project on IBM Data Analytics Program
Capstone Project on IBM Data Analytics Program
 
BabyOno dropshipping via API with DroFx.pptx
BabyOno dropshipping via API with DroFx.pptxBabyOno dropshipping via API with DroFx.pptx
BabyOno dropshipping via API with DroFx.pptx
 
CebaBaby dropshipping via API with DroFX.pptx
CebaBaby dropshipping via API with DroFX.pptxCebaBaby dropshipping via API with DroFX.pptx
CebaBaby dropshipping via API with DroFX.pptx
 
Anomaly detection and data imputation within time series
Anomaly detection and data imputation within time seriesAnomaly detection and data imputation within time series
Anomaly detection and data imputation within time series
 
Accredited-Transport-Cooperatives-Jan-2021-Web.pdf
Accredited-Transport-Cooperatives-Jan-2021-Web.pdfAccredited-Transport-Cooperatives-Jan-2021-Web.pdf
Accredited-Transport-Cooperatives-Jan-2021-Web.pdf
 
Cheap Rate Call girls Sarita Vihar Delhi 9205541914 shot 1500 night
Cheap Rate Call girls Sarita Vihar Delhi 9205541914 shot 1500 nightCheap Rate Call girls Sarita Vihar Delhi 9205541914 shot 1500 night
Cheap Rate Call girls Sarita Vihar Delhi 9205541914 shot 1500 night
 
Call Girls in Sarai Kale Khan Delhi 💯 Call Us 🔝9205541914 🔝( Delhi) Escorts S...
Call Girls in Sarai Kale Khan Delhi 💯 Call Us 🔝9205541914 🔝( Delhi) Escorts S...Call Girls in Sarai Kale Khan Delhi 💯 Call Us 🔝9205541914 🔝( Delhi) Escorts S...
Call Girls in Sarai Kale Khan Delhi 💯 Call Us 🔝9205541914 🔝( Delhi) Escorts S...
 
Ravak dropshipping via API with DroFx.pptx
Ravak dropshipping via API with DroFx.pptxRavak dropshipping via API with DroFx.pptx
Ravak dropshipping via API with DroFx.pptx
 
ELKO dropshipping via API with DroFx.pptx
ELKO dropshipping via API with DroFx.pptxELKO dropshipping via API with DroFx.pptx
ELKO dropshipping via API with DroFx.pptx
 
Smarteg dropshipping via API with DroFx.pptx
Smarteg dropshipping via API with DroFx.pptxSmarteg dropshipping via API with DroFx.pptx
Smarteg dropshipping via API with DroFx.pptx
 
Call Girls Bannerghatta Road Just Call 👗 7737669865 👗 Top Class Call Girl Ser...
Call Girls Bannerghatta Road Just Call 👗 7737669865 👗 Top Class Call Girl Ser...Call Girls Bannerghatta Road Just Call 👗 7737669865 👗 Top Class Call Girl Ser...
Call Girls Bannerghatta Road Just Call 👗 7737669865 👗 Top Class Call Girl Ser...
 
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...
 
Generative AI on Enterprise Cloud with NiFi and Milvus
Generative AI on Enterprise Cloud with NiFi and MilvusGenerative AI on Enterprise Cloud with NiFi and Milvus
Generative AI on Enterprise Cloud with NiFi and Milvus
 

Cardinality and participation constraints

  • 2. Constraints Relationship types usually have certain constraints that limit the possible combinations of entities that may participate in the corresponding relationship set.
  • 4. Why to use Constraints ? • To limit the type of data that can go into a table • To maintain the accuracy and integrity of the data inside table. Most used constraints: • NOT NULL • UNIQUE • PRIMARY KEY • FOREIGN KEY • CHECK • DEFAULT
  • 5. Type of Constraints We can distinguish two main types of relationship constraints: •Cardinality constraints •Participation constraints
  • 6. Employee DepartmentWork for Entity Relationship type Entity Every relation in relationship type is an association between employee and department
  • 7. Requirement Analysis: • Every employee work for one department • An department can have many employees • New department need not have employee Degree: In every relationship how many entities are participating.
  • 9. Work For Work For Employee Department Employee Department 1N (1,1) (0,N) Min/Max Representation ER diagram More info could be represented using MIN/Max Method
  • 10. E1 E2 E3 E4 1 2 3 4 D1 D2 D3 D4 Employee Manager Department Degree-2(binary) Every Department should have a manager & only one employee manages a department. An Employee can manage only one department. Requirement Analysis:
  • 11. Cardinality My Cardinal Is Bigger Than Yours
  • 12. Cardinality The term cardinality actually has two different meanings depending on the context of it’s usage – one meaning is in the context of Data modeling and the other meaning is in the context of SQL statements.
  • 13. Relationship one table can have with another table
  • 14. In The Context Of Data Modeling It simply refers to the relationship that one table can have with another table. These relationships include: many-to-many, many-to- one/one-to-many, or one-to-one – whichever one of these characteristics a table has in relationship with another table is said to be the cardinality of that table.
  • 15.
  • 16. Example: Suppose we have three tables that are used by a company to store employee information: an Employee table, an Employee_Salary table, and a Department table. The Department table will have a one to many relationship with the Employee table, because every employee can belong to only one department, but a department can consist of many employees. In other words, the cardinality of the Department table in relationship to the employee table is one to many. The cardinality of the Employee table in relationship to the Employee_Salary table will be one to one, since an employee can only have one salary, and vice versa.
  • 17. There are three degrees of Cardinality, known as: • One-to-One (1:1):One occurrence of an entity relates to only one occurrence in another entity. • One-to-Many (1:M): One occurrence in an entity relates to many occurrences in another entity. • Many-to-Many (M:N) Many occurrences in an entity relate to many occurrences in another entity.
  • 19. Cardinality in SQL Cardinality refers to the uniqueness of data contained in a column. If a column has a lot of duplicate data (e.g. a column that stores either "true" or "false"), it has low cardinality, but if the values are highly unique (e.g. Social Security numbers), it has high cardinality.
  • 20. For example, let’s say we have a table with a “Gender” column which has only two possible values of “Male” and “Female”. Then, that “Gender” column would have a cardinality of 2, because there are only two unique values that could possibly appear in that column .
  • 21. Let’s say that we have a primary key column on a table with 10,000 rows. What do you think the cardinality of that column would be? Primary key: It is a key in a relational database that is unique for each record.
  • 22. It is 10,000. Because it is a primary key column, we know that all of the values in the column must be unique. Cardinality of a primary key column will always be equal to the number of records in the same table.
  • 24. Participation Constraint There are two types of participation constraints—total and partial. The participation of an entity set E in a relationship set R is said to be total if every entity in E participates in at least one relationship in R. If only some entities in E participate in relationships in R, the participation of entity set E in relationship R is said to be partial.
  • 25. ER model Double line indicates the total participation constraint in an ER model. Single line indicates the partial participation constraint in an ER model.
  • 26. Cardinality Constraints : At most Participation Constraints : At least or Minimum