Inclusion Dependency in DBMS
Inclusion Dependency is an important concept in database design that defines a relationship between two sets of attributes. It specifies that the values appearing in one set of attributes must also appear in another set of attributes.
In simple terms, an inclusion dependency ensures that values stored in one table are valid values that already exist in another related table. It is commonly associated with foreign key relationships and plays an important role in maintaining referential integrity.
Table of Contents

Understanding Inclusion Dependency
Consider a company database containing information about employees and their departments. If an employee record contains a Department_ID, that value should correspond to an existing department.
For example:
- Referenced relation: Departments
- Referencing relation: Employees
- Referenced attribute: Department_ID
- Referencing attribute: Department_ID
If an employee has a Department_ID of 10, then department 10 must exist in the Departments table.
This prevents invalid references and helps maintain consistency between related tables.
Complete Advance AI Topics: Click Here
SQL Tutorial: Click Here
What Does Inclusion Dependency Mean?
An inclusion dependency states that the values of one attribute set are included in the values of another attribute set.
For example, suppose we have two relations:
- Employees(Employee_ID, Name, Department_ID)
- Departments(Department_ID, Department_Name)
The following inclusion dependency can be defined:
Employees[Department_ID] ⊆ Departments[Department_ID]
This means every Department_ID appearing in the Employees relation must also appear in the Departments relation.
Formal Definition of Inclusion Dependency
Let R and S be two relations. If a set of attributes A from relation R must contain only values that appear in a corresponding set of attributes B from relation S, the inclusion dependency is written as:
R[A] ⊆ S[B]
It means that every value in R[A] must also occur in S[B].
For example:
Orders[Product_ID] ⊆ Products[Product_ID]
This constraint ensures that every product referenced in the Orders table exists in the Products table.
Example of Inclusion Dependency
Consider the following two tables.
Students Table
| StudentID | Name |
|---|---|
| 1 | Alice |
| 2 | Bob |
| 3 | Charlie |
Enrollments Table
| EnrollmentID | StudentID | Course |
|---|---|---|
| 101 | 1 | DBMS |
| 102 | 2 | Operating Systems |
| 103 | 3 | Computer Networks |
Here, the following inclusion dependency exists:
Enrollments[StudentID] ⊆ Students[StudentID]
The StudentID values in the Enrollments table are 1, 2, and 3. All of these values exist in the Students table.
Therefore, the inclusion dependency is satisfied.
Inclusion Dependency and Foreign Keys
Inclusion dependency is closely related to foreign key constraints in relational databases.
For example, the following SQL tables implement the relationship described above:
CREATE TABLE Students (
StudentID INT PRIMARY KEY,
Name VARCHAR(100)
);
CREATE TABLE Enrollments (
EnrollmentID INT PRIMARY KEY,
StudentID INT,
Course VARCHAR(100),
FOREIGN KEY (StudentID)
REFERENCES Students(StudentID)
);
The foreign key ensures that a StudentID entered into the Enrollments table must correspond to an existing StudentID in the Students table.
Inclusion Dependency vs Functional Dependency
Inclusion dependency should not be confused with functional dependency. They describe different types of relationships.
| Feature | Inclusion Dependency | Functional Dependency |
|---|---|---|
| Purpose | Ensures values in one attribute set exist in another. | Describes how one attribute determines another. |
| Notation | R[A] ⊆ S[B] | A → B |
| Common Example | Foreign key relationship | Primary key determines non-key attributes |
| Main Concern | Referential integrity | Data dependency |
For example, StudentID → StudentName is a functional dependency, while Enrollments[StudentID] ⊆ Students[StudentID] is an inclusion dependency.
Key Points of Inclusion Dependency
- It specifies that values in one attribute set must also occur in another attribute set.
- It can involve attributes from the same relation or different relations.
- Foreign key relationships are a common practical example.
- It helps maintain referential integrity.
- It prevents invalid references between related tables.
- It is useful when designing relationships between relational database tables.
Advantages of Inclusion Dependency
- Maintains data integrity: Ensures that referenced values exist in the appropriate relation.
- Prevents invalid references: Helps prevent records from referring to non-existent data.
- Improves consistency: Keeps relationships between tables logically valid.
- Supports relational design: Makes relationships between related tables explicit.
- Reduces data errors: Prevents invalid foreign key values from being stored.
Disadvantages of Inclusion Dependency
- Additional validation: Database systems may need to check referenced values during insert and update operations.
- Dependency between tables: Changes to referenced data may be restricted when dependent records exist.
- Complexity in large databases: Managing many interconnected relationships can make database design more complicated.
- Performance considerations: Referential integrity checks can introduce some overhead for certain operations.
Real-World Example
Consider an online shopping system with two tables:
- Products(Product_ID, Product_Name, Price)
- Orders(Order_ID, Product_ID, Quantity)
The relationship can be represented as:
Orders[Product_ID] ⊆ Products[Product_ID]
This means an order can reference only a product that exists in the Products table.
If an order contains Product_ID = 105, but product 105 does not exist in the Products table, the database should reject the reference when the inclusion constraint is enforced.
YT:- DecodeIT
Conclusion
Inclusion Dependency in DBMS defines a constraint where the values of one attribute set must be contained within the values of another attribute set. It is especially important for maintaining relationships between tables and preserving referential integrity.
Understanding inclusion dependencies helps database designers create consistent relational schemas and avoid invalid references. In practical database systems, foreign key constraints are one of the most common ways of enforcing this type of relationship.
Keywords
Inclusion Dependency, Inclusion Dependency in DBMS, Inclusion Dependency in Database, DBMS Inclusion Dependency, Inclusion Dependency Example, Inclusion Dependency Types, Inclusion Dependency and Foreign Key, Referential Integrity, Functional Dependency vs Inclusion Dependency, Database Dependencies, DBMS