データベーススペシャリスト試験では、関係スキーマが第 3 正規形(3NF)に従っているかを判定する設問が頻出します。判定の基本は『推移的従属性が無いこと』です。
判定手順 1: スキーマから関数従属性(FD)を全て列挙します。`A → B`、`B → C` のような関係を矢印で図示します。
判定手順 2: 候補キーを特定します。Armstrong の公理系(反射律・添加律・推移律)を適用して、すべての属性を導出できる最小の属性集合を求めます。
判定手順 3: 候補キーに含まれない属性(非キー属性)が、候補キー以外を経由して決まっていないか(推移的従属性)を確認します。`候補キー → A → 非キー` のような連鎖があれば 3NF 違反です。
違反した場合は属性を分割し、推移経路に出た属性を別表に切り出します。BCNF(Boyce-Codd 正規形)はさらに厳しい条件で、すべての非自明な FD の左辺がスーパーキーであることを要求します。