令和7年度 春期 午前 問26
データベース
第3正規形に変換する手順
関係を第 2 正規形から第 3 正規形に変換する手順はどれか。
- ア候補キー以外の属性から,候補キーの一部の属性に対して関数従属性がある場合,その関係を分解する。
- イ候補キー以外の属性間に関数従属性がある場合,その関係を分解する。
- ウ候補キーの一部の属性から,候補キー以外の属性への関数従属性がある場合,その関係を分解する。
- エ一つの属性に複数の値が入っている場合,単一の値になるように分解する。
答えと解説を見る
✓ これが正解イ候補キー以外の属性間に関数従属性がある場合,その関係を分解する。
解説
候補キー以外の属性どうしの関数従属を取り除く手順です。
正規化の各段階は、どの向きの関数従属性を取り除くかで区切られています。最初の段階は、一つの欄に複数の値が入っている状態をほどいて単一の値にそろえる作業です。次の段階は、候補キーの一部だけで決まってしまう属性を切り出す作業で、キーの一部にぶら下がった重複を取り除きます。そして第3正規形へ進む段階で見るのは、候補キーを介さずに、候補キーではない属性が別の候補キーではない属性を決めてしまっている箇所です。この結び付きが残っていると、片方だけを書き換えたときに食い違いが生じます。そこで、その結び付きを別の関係として切り出し、もとの関係には結び付きの入口となる属性だけを残します。正解の肢は、この候補キー以外の属性の間にある関数従属性に着目して分解するという手順を述べたものです。
ほかの選択肢はなぜ違うのか
- ア候補キー以外の属性から,候補キーの一部の…:候補キー以外の属性から候補キーの一部へ向かう従属を分解の合図としていますが、これはキーではない側がキーの側を決めてしまう形で、第3正規形より先の、より厳しい段階で扱われるものです。設問が尋ねている手順とは別です。
- ウ候補キーの一部の属性から,候補キー以外の…:候補キーの一部から候補キー以外の属性へ向かう従属を挙げていますが、これは部分関数従属と呼ばれる形で、第1正規形から第2正規形へ進むときに解消するものです。設問が求める段階より一つ手前にあたります。
- エ一つの属性に複数の値が入っている場合,単…:一つの属性に複数の値が入っている状態を単一の値になるように分けると述べていますが、これは正規化されていない表を第1正規形にする最初の作業です。第2正規形から先へ進む手順ではありません。
出典:令和7年度 春期 応用情報技術者試験 午前 問26
この解説に誤りを見つけたら教えてください。直して、直した記録を残します。誤りを報告する(メールが開きます)