問26 第 3 正規形への変換

応用情報​技術者試験 令和7年度 春期 午前、全80問のうちの問26。

出典:令和7年度 春期 応用情報技術者試験 午前 問26

関係を第 2 正規形から第 3 正規形に変換する手順はどれか。

  1. ア候補キー以外の属性から,候補キーの一部の属性に対して関数従属性がある場合,その関係を分解する。
  2. イ候補キー以外の属性間に関数従属性がある場合,その関係を分解する。
  3. ウ候補キーの一部の属性から,候補キー以外の属性への関数従属性がある場合,その関係を分解する。
  4. エ一つの属性に複数の値が入っている場合,単一の値になるように分解する。
答えと解説を開く

正解はイです。

第 2 正規形では、候補キーの一部だけで決まる属性 (部分関数従属) はもう取り除かれています。それでも、候補キー以外の属性 X が決まると、別の候補キー以外の属性 Y が決まる、という従属が残ることがあります。キー → X → Y と、キーから Y が X を経由して決まるので、推移的関数従属と呼びます。これを X と Y の関係として切り出すと第 3 正規形になります。正解はイです。

ほかの選択肢が違う理由

  • ア候補キー以外の属性から候補キーの一部への従属を分解するのは、第 3 正規形からボイスコッド正規形 (BCNF) に進める手順です。
  • ウ候補キーの一部から候補キー以外の属性への従属 (部分関数従属) を分解するのは、第 1 正規形から第 2 正規形にする手順です。
  • エ1 つの属性に複数の値が入っているのを単一の値に分けるのは、非正規形から第 1 正規形にする手順です。

仕組み

正規化の段階は、繰り返しをなくす (第 1)、キーの一部への従属をなくす (第 2)、キー以外どうしの従属をなくす (第 3)、の順に進むと覚えると整理しやすくなります。

推移的関数従属が残っていると、たとえば社員の表に部署名が何度も入り、部署名を変えるときに全部の行を直さなければならなくなります。分けておけば 1 か所の更新で済みます。

この問に出る言葉