Search code examples
database-designdatabase-normalizationfunctional-dependencies

Question concerning the transitivity axiom and 2NF


If I have a table {A, B, C} and the FDs: {A -> B, B -> C} is the table in 2NF ?

Im a little bit confused because of the transitivity axiom which is if A -> B and B -> C then A -> C.

Is C FULL functional dependent from A or is C just normal functional dependent from A ? And in which NF is the table ? 1 or 2 ?


Solution

  • The relation is in 2NF, but not in 3NF. You are confusing full and partial dependencies with transitive and direct dependencies.

    A dependency like A -> C is a transitive dependency when we have that A -> B and B -> C.

    On the hand, a relation is not in 2NF if there are partial dependencies: that is if a non-prime attribute depends on a part of a candidate key, that is on a subset of the attributes of a candidate key (so there must be a candidate key that is formed by more than one attribute).