Functional Dependency

A functional dependency A->B in a relation holds if two tuples having the same value of attribute A also have the same value for attribute B. For Example, in relation to STUDENT shown in Table 1, Functional Dependencies 

STUD_NO->STUD_NAME, STUD_NO->STUD_PHONE hold

but 

STUD_NAME->STUD_STATE do not hold

Student Table

Advantages of Functional Dependencies

  • Through the identification and removal of redundant or unneeded data, they aid in the reduction of data redundancy in databases.
  • By guaranteeing that data is correct and consistent throughout the database, they enhance data integrity.
  • They make it simpler to add, edit, and remove data, which helps with database management.

Disadvantages of Functional Dependencies

  • The process of identifying functional dependencies can be time-consuming and complex, especially in large databases with many tables and relationships.
  • Overly restrictive functional dependencies can result in slow query performance or data inconsistencies, as data that should be related may not be properly linked.
  • Functional dependencies do not take into account the semantic meaning of data, and may not always reflect the true relationships between data elements.

Functional Dependency and Attribute Closure

Fundamental ideas in database management and design are functional dependency and attribute closure. They are essential to maintaining data integrity and building effective, organized, and normalized databases.

Similar Reads

Functional Dependency

A functional dependency A->B in a relation holds if two tuples having the same value of attribute A also have the same value for attribute B. For Example, in relation to STUDENT shown in Table 1, Functional Dependencies...

How to find Functional Dependencies for a Relation?

Functional Dependencies in a relation are dependent on the domain of the relation. Consider the STUDENT relation given in Table 1....

Attribute Closure

Attribute closure of an attribute set can be defined as set of attributes which can be functionally determined from it....

How to Find Candidate Keys and Super Keys Using Attribute Closure?

If attribute closure of an attribute set contains all attributes of relation, the attribute set will be super key of the relation. If no subset of this attribute set can functionally determine all attributes of the relation, the set will be candidate key as well. For Example, using FD set of table 1,...

Prime and Non-Prime Attributes

Attributes which are parts of any candidate key of relation are called as prime attribute, others are non-prime attributes. For Example, STUD_NO in STUDENT relation is prime attribute, others are non-prime attribute....

Conclusion

Tools like functional dependency and attribute closure are helpful when designing and optimizing databases. They are useful for:...

GATE Questions

Q.1: Consider the relation scheme R = {E, F, G, H, I, J, K, L, M, N} and the set of functional dependencies {{E, F} -> {G}, {F} -> {I, J}, {E, H} -> {K, L}, K -> {M}, L -> {N} on R. What is the key for R? (GATE-CS-2014)...