There are two functional dependencies in SQL databases.
a) Partial functional dependency: an implicit column depends on some, but not all, columns in a composite primary key.
b) Transitive functional dependencies: Any implicit column depends on other non-key columns.
For a good SQL database.
Rule 1: Columns only contain atomic values
Rule 2: No Duplicate Data Groups
Rule 3: Do Not Have Partial Dependencies
Rule 4: no transitive dependencies
I understood the requirements of rules 1 and 2, why we need the 3rd and 4th rules, instead of saying that the column no should not depend on other columns. Why are there two separate rules (3 and 4)?
Source: Head First SQL
Thanks in advance!
source share