第2正規形とは?だいにせいきけい
第2正規形とは、第1正規形(1つの欄に値が1つだけ入り、繰り返しの項目を持たない表の形)を満たし、かつ候補キー(行を1つに特定できる属性の組)に含まれないすべての属性(非キー属性)が、候補キー全体に完全関数従属している状態。関数従属とは、ある属性の値が決まると別の属性の値も1つに決まる関係で、完全関数従属とはキーの全部がそろって初めて値が決まることをいう。言い換えると、複合キーの一部だけで決まる属性(部分関数従属)が表に残っていない。基本情報では、この定義を選ばせるより、関数従属の一覧を渡して実際に表へ切り分けさせる形で出る。手を動かして分割できるかが問われる。
最終更新:2026-10-09
基本情報を最短で暗記・合格する →背景
部分関数従属が残った表では、複合キーの片側だけで決まる値が行の数だけ重複して書かれ、1か所を直し忘れると同じキーに違う値が並ぶ。これを防ぐ手順が、従属の起点になっている属性を主キーとする別の表を作り、元の表には起点だけを外部キーとして残す、という分割である。基本情報の設問は、この手順を頭の中で実行できるかを、選択肢に並んだ表の組合せを見比べさせる形で確かめてくる。
具体例
受注明細(受注番号, 商品番号, 商品名, 数量)の表で、主キーは受注番号と商品番号の組(複合キー)とする。数量は受注番号と商品番号の両方がそろって初めて決まる(完全関数従属)が、商品名は商品番号だけで決まる(部分関数従属)。そこで商品番号を主キーとする商品(商品番号, 商品名)を別の表に切り出し、元の表は受注明細(受注番号, 商品番号, 数量)として商品番号を外部キーに残す。これで第2正規形になる。
試験での引っ掛け
分割したときに、切り出した側の主キー(例では商品番号)を元の表に外部キーとして残し忘れやすい。残さないと、どの受注にどの商品が入っていたかの対応が取れなくなり、分割そのものが成立しない。もう一つ、令和5年度公開問題 科目A 問6で問われる推移的関数従属(注文コード→顧客コード→顧客住所)は第3正規形で取り除く対象であって、第2正規形で取り除く部分関数従属とは別物である。なお主キーが単一属性の表では部分従属が起こり得ないので、第1正規形であればそのまま第2正規形を満たす。
関連用語
出典・参考
公式シラバスの3 技術要素 > 2. データベース設計 > (3) データの正規化に掲載されている用語です。
解説は資格暗記が独自に作成しています。過去問の出典は各問題に記載のとおりです。