The relational model was discovered by **Dr. E. F. Codd**. The relational model is an abstract theory of data that is based on the mathematical concept of relations. In relational database, information is stored in tabular form or in tables. So, it consists of collection of tables. We use mathematical terms in relational model. The relational model is concerned with three aspects of data: **data structure**, **data integrity**, and **data manipulation**.

### 1. Definition of Relation

Given a collection of sets D_{1}, D_{2}, …, D_{n}, (not necessarily distinct), R is a relation on those *n *sets if it is a set of ordered *n*-tuples <d_{1}, d_{2}, …, d_{n}> such that d_{1} belongs to D_{1}, d_{2} belongs to D_{2}, …, d_{n}* *belongs to D_{n}. Sets D_{1}, D_{2}, …, D_{n}* *are the domains of R. The value of *n *is the degree of R.

### 2. Data Structure of Relational Database

Relational model uses simple tables instead of complex tree and network structures to simplify the user’s view of the database. It is a collection of tables in which data is stored. A table is a matrix of a series of row and column intersections. Following are the basic data structures used in relational database.

*Relation (Entity set in E-R model) :*In relational model name of table is known as It consists of all possible tuples.*Tuple (Entity in E-R model) :*Single row of any relation is known as tuple.*Attributes (Same in E-R model) :*These are the characteristics of any relation.*Domain (Same in E-R model) :*Domain is the set of all permitted values or information about any For example in relation**Employee**, domain for attribute Emp- Name is (Deepak, Vinay, Gaurav, Rajiv).*Tuple variable (Value in E-R model) :*Tuple variable is the part of tuple or row, which is information or data stored in relation for any attribute.

*Degree :*Number of columns in any relation is known as its degree.*Cardinality :*Number of rows in any relation is known as its cardinality.

**Types of Attributes : **Attributes type discussed in E-R model are also applicable here.

*Keys :*A key is a single attribute or a set of attributes of a relation which can uniquely identify a record within the relation. A key may be Primary key, Supper key, Candidate key, Foreign key Keys discussed in E-R model are also applicable here.*Database instance :*Database instance shows the data of database at a particular instance of time.*Relation schema :*Relation schema is the logical design of relations of any It gives the way of representation of relations or you can say that notations used for relations in database.*Relation instance :*It is related with the values in It shows the data stored in relations at a particular instance of time.

### 3. Integrity Constraints

These are the rules or constraints applied to the database to keep data stable, accurate or consistent. To keep database consistent we have to follow some rules known as integrity rules or integrity constraints.

###### 1. Entity Integrity Rule (Integrity Rule 1)

Primary key or a part of it in any relation cannot be null. Suppose A be the attribute in relation R which is taken as primary key then A must not be null.

###### 2. Referential Integrity Rule (Integrity Rule 2)

A foreign key can be either null or it can have only those values which are present in the primary key with which it is related.

Suppose A be the attribute in relation R1, which is also the primary key in relation R2, then value of A in R1 is either null or same as in relation R2.

###### 3. Domain Constraints

The restrictions which we applied on domain are known as domain constraints. These restrictions are applied to every value of attribute. By following these constraints you can keep consistency in database. These restrictions include data types (integer, varchar, char, time format, date format etc.), size of variable, checks (like value not null etc.) etc.

** Ex. **create table employee

(Eid char (4),

Name char (20),

Age integer (2),

Salary integer,

primary key (Eid),

Check (age>18))

###### 4. Key Constraints

In any relation R, if attribute A is primary key then A must have unique value or you can say that primary key attribute must have unique value.

Duplicate values in primary key are invalid.

###### 5. Tuple Uniqueness Constraints

In any relation R, all tuples in relation R must have distinct values. In other words Duplicate tuples within a single relation are not allowed.

** **

** ****Example. **Consider the two relations given below

Given that A is the primary key of R, D is the primary key of S and there is a referential integrity between S.A and R.A. Determine all integrity constraints that are violated.

###### Sol.

- The primary key of R contains the NULL value and the value ‘a1’ is This violates the entity integrity constraint in the relation R.
- In the primary key of S, the value ‘d1’ is This violates the entity integrity constraint in the relation S.
- The foreign key A contains the value ‘a2’. This value is not available in the parent key R.A. This violates the referential integrity constraint in the relation S.

Source: Gupta Satinder Bal, Mittal Aditya (2017), *Introduction to Database Management System*, 2nd Edition-University Science Press (2017)