1. Functional Dependency (FD)
Definition: A functional dependency is a relationship where one attribute uniquely determines another attribute in a relation.
Example:
Roll_No → Name
(If we know Roll_No, we know Name)
Types of FDs
1. Trivial FD
FD A → B is trivial if B is already part of A.
Example: {Roll, Name} → Name
2. Non-Trivial FD
FD A → B is non-trivial if B is not part of A.
Example: Roll → Dept
3. Full Functional Dependency (FFD)
If non-key attribute depends on entire composite key, not just part.
Example: (Roll, Subject) → Marks
Marks depends on both Roll AND Subject.
4. Partial Dependency
When non-key attribute depends on part of composite key, not whole.
Example: Roll → Student_Name
Removed in: 2NF
5. Transitive Dependency (TD)
If A → B and B → C then A → C
Example: Student_ID → Dept, Dept → HOD
Therefore Student_ID → HOD
Removed in: 3NF
6. Multi-Valued Dependency (MVD)
One attribute determines multiple independent values of another.
Notation: A →→ B
Example: Student(ID) →→ Phone_Number
7. Join Dependency (JD)
A relation can be decomposed into multiple tables and re-joined without loss.
Example: R(ABCD) into AB, BC, CD and rejoined back.