0% found this document useful (0 votes)
17 views21 pages

U2-1.Relational Model Concepts

Uploaded by

Dexter
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
17 views21 pages

U2-1.Relational Model Concepts

Uploaded by

Dexter
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 21

UNIT II

RELATIONAL MODEL AND SQL

Relational model concepts -- Integrity

constraints -- SQL Data manipulation – SQL

Data definition –Views -- SQL programming.


What is the Relational Model?
• A relational database is a collection of tables that store data in a structured format,
with columns and rows, to show how different data sets relate to each
other. Relational databases are also known as SQL databases.
• The relational model represents how data is stored in Relational Databases.
• A relational database consists of a collection of tables, each of which is assigned a
unique name.
• Table Student
Consider a relation STUDENT with attributes ROLL_NO, NAME, ADDRESS,
PHONE, and AGE shown in the table.

ROLL_NO NAME ADDRESS PHONE AGE

1 RAM DELHI 9455123451 18

2 RAMESH GURGAON 9652431543 18

3 SUJIT ROHTAK 9156253131 20

4 SURESH DELHI 18
Important Terminologies
1. Attribute
2. Relation Schema
3. Tuple
4. Relation Instance
5. Degree
6. Cardinality
7. Column
8. NULL Values
9. Relation Key
• 1.Attribute: Attributes are the properties that define an entity.
e.g.; ROLL_NO, NAME, ADDRESS
• 2.Relation Schema:
• A relational schema is a blueprint for a database that shows how
data is stored and organized, and how the database's datasets are
connected.
• A relation schema defines the structure of the relation and represents
the name of the relation with its attributes. e.g.; STUDENT
(ROLL_NO, NAME, ADDRESS, PHONE, and AGE) is the relation
schema for STUDENT. If a schema has more than 1 relation, it is
called Relational Schema.
• 3.Tuple: Each row in the relation is known as
a tuple. The below relation contains 4 tuples,
one of which is shown as:
• 4.Relation Instance: The set of tuples of a relation at a particular
instance of time is called a relation instance. Table 1 shows the
relation instance of STUDENT at a particular time. It can change
whenever there is an insertion, deletion, or update in the database.
• 5.Degree: The number of attributes in the relation is known as the
degree of the relation. The STUDENT relation defined above has
degree 5.
• 6.Cardinality: The number of tuples in a relation is known as
cardinality. The STUDENT relation defined above has cardinality 4.
• 7.Column: The column represents the set of values for a particular
attribute. The column ROLL_NO is extracted from the relation
STUDENT.
ROLL_NO

4
• 8.NULL Values: The value which is not known or unavailable is
called a NULL value. It is represented by blank space.
• 9.Relation Key: These are basically the keys that are used to
identify the rows uniquely or also help in identifying tables. These
are of the following types.
– Primary Key
– Candidate Key
– Super Key
– Foreign Key
– Alternate Key
– Composite Key
Constraints in Relational Model :
• While designing the Relational Model, we define some conditions
which must hold for data present in the database are called
Constraints.
• These constraints are checked before performing any operation
(insertion, deletion, and updation ) in the database. If there is a
violation of any of the constraints, the operation will fail.
Domain Constraints
• These are attribute-level constraints. An attribute can only take
values that lie inside the domain range.
• e.g.; If a constraint AGE > 0 is applied to STUDENT relation,
inserting a negative value of AGE will result in failure.
Key Integrity
• Every relation in the database should have at least one set of
attributes that defines a tuple uniquely.
• Those set of attributes is called keys. e.g.; ROLL_NO in STUDENT
is key. No two students can have the same roll number. So a key has
two properties:
• It should be unique for all tuples.
• It can’t have NULL values.
Referential Integrity
• When one attribute of a relation can only take values from another
attribute of the same relation or any other relation, it is
called referential integrity. Let us suppose we have 2 relations
• Eg: Table student:

ROLL_NO NAME ADDRESS PHONE AGE BRANCH_CODE

1 RAM DELHI 9455123451 18 CS

2 RAMESH GURGAON 9652431543 18 CS

3 SUJIT ROHTAK 9156253131 20 ECE

4 SURESH DELHI 18 IT
• Table Branch:

RANCH_CODE BRANCH_NAME

CS COMPUTER SCIENCE

IT INFORMATION TECHNOLOGY

ECE ELECTRONICS AND COMMUNICATION ENGINEERING

CV CIVIL ENGINEERING
• BRANCH_CODE of STUDENT can only take the values which are
present in BRANCH_CODE of BRANCH which is called
referential integrity constraint.
• The relation which is referencing another relation is called
REFERENCING RELATION (STUDENT in this case) and the
relation to which other relations refer is called REFERENCED
RELATION (BRANCH in this case).
• Anomalies in the Relational Model
• An anomaly is an irregularity or something which deviates from the
expected or normal state. When designing databases, we identify
three types of anomalies: Insert, Update, and Delete.
Insertion Anomaly in Referencing Relation
• We can’t insert a row in REFERENCING RELATION if referencing
attribute’s value is not present in the referenced attribute value.
• e.g.; Insertion of a student with BRANCH_CODE ‘ME’ in
STUDENT relation will result in an error because ‘ME’ is not
present in BRANCH_CODE of BRANCH.

Deletion/ Updation Anomaly in Referenced Relation:


• We can’t delete or update a row from REFERENCED RELATION if
the value of REFERENCED ATTRIBUTE is used in the value of
REFERENCING ATTRIBUTE. :
• e.g; if we try to delete a tuple from BRANCH having
BRANCH_CODE ‘CS’, it will result in an error because ‘CS’ is
referenced by BRANCH_CODE of STUDENT, but if we try to
delete the row from BRANCH with BRANCH_CODE CS, it will be
deleted as the value is not been used by referencing relation. It can
be handled by the following method
On Delete Cascade
• It will delete the tuples from REFERENCING RELATION if the
value used by REFERENCING ATTRIBUTE is deleted from
REFERENCED RELATION. e.g.; For, if we delete a row from
BRANCH with BRANCH_CODE ‘CS’, the rows in STUDENT
relation with BRANCH_CODE CS (ROLL_NO 1 and 2 in this case)
will be deleted.
On Update Cascade
• It will update the REFERENCING ATTRIBUTE in
REFERENCING RELATION if the attribute value used by
REFERENCING ATTRIBUTE is updated in REFERENCED
RELATION. e.g;, if we update a row from BRANCH with
BRANCH_CODE ‘CS’ to ‘CSE’, the rows in STUDENT relation
with BRANCH_CODE CS (ROLL_NO 1 and 2 in this case) will be
updated with BRANCH_CODE ‘CSE’.
Super Keys
• Any set of attributes that allows us to identify unique rows (tuples)
in a given relationship is known as super keys. Out of these super
keys, we can always choose a proper subset among these that can be
used as a primary key. Such keys are known as Candidate keys. If
there is a combination of two or more attributes that are being used
as the primary key then we call it a Composite key.
Codd Rules in Relational Model
• Edgar F Codd proposed the relational database model where he
stated rules. Now these are known as Codd’s Rules.
Advantages of the Relational Model
• Simple model: Relational Model is simple and easy to use in
comparison to other languages.
• Flexible: Relational Model is more flexible than any other relational
model present.
• Secure: Relational Model is more secure than any other relational
model.
• Data Accuracy: Data is more accurate in the relational data model.
• Data Integrity: The integrity of the data is maintained in the
relational model.
• Operations can be Applied Easily: It is better to perform
operations in the relational model.
Disadvantages of the Relational Model

• Relational Database Model is not very good for large databases.

• Sometimes, it becomes difficult to find the relation between tables.

• Because of the complex structure, the response time for queries is

high.
Characteristics of the Relational Model
• Data is represented in rows and columns called relations.
• Data is stored in tables having relationships between them called the
Relational model.
• The relational model supports the operations like Data definition,
Data manipulation, and Transaction management.
• Each column has a distinct name and they are representing
attributes.
• Each row represents a single entity.

You might also like