令和3年度 秋期 午前Ⅱ 問5
データベース設計
正規化に関する記述
第 1 正規形から第 5 正規形までの正規化に関する記述のうち,適切なものはどれか。
- ア正規形にする分解は全て関数従属性が保存される。
- イ正規形にする分解は全て情報無損失の分解である。
- ウ第 3 正規形への分解では,情報無損失かつ関数従属性が保存される。
- エ第 4 正規形から第 5 正規形への分解は自明な多値従属性が保存される分解である。
答えと解説を見る
✓ これが正解ウ第 3 正規形への分解では,情報無損失かつ関数従属性が保存される。
解説
第3正規形までの分解は、情報無損失と関数従属性の保存を両立できます。
正規化で関係を分解するときに気にする性質は二つあります。分解した表を結合すると元の表に戻せる情報無損失と、元の関数従属性が分解後のどれかの表の中でそのまま確かめられる関数従属性の保存です。第3正規形への分解は、この二つを両方満たす形で行えることが知られています。一方、ボイス・コッド正規形やそれ以上へ進めようとすると、情報無損失は保てても、関数従属性の保存をあきらめなければならない場合が出てきます。見分ける軸は、二つの性質がどの段階まで両立するかです。第3正規形までは両方を保てる、それより上では従属性の保存が崩れることがある、と区切って覚えておくと判断できます。
ほかの選択肢はなぜ違うのか
- ア正規形にする分解は全て関数従属性が保存さ…:ボイス・コッド正規形へ分解するとき、ある関数従属の左辺と右辺の属性が別々の表に分かれてしまい、どの表の中でもその従属を確かめられなくなることがあります。全ての分解で関数従属性が保存されるとはいえません。
- イ正規形にする分解は全て情報無損失の分解で…:分解の仕方によっては、分けた表を結合したときに元には無かった行が混じり、元の表に戻せなくなります。正規化では情報無損失になるように分けるべきですが、正規形にする分解であれば全てそうなる、というわけではありません。
- エ第 4 正規形から第 5 正規形への分解…:第5正規形への分解は、三つ以上の表に分けて結合し直すと元に戻るような従属関係を取り除く段階とされます。自明な多値従属性はどの関係でも常に成り立つもので、それが保存されることは、この段階の分解を言い表す説明になっていません。
出典:令和3年度 秋期 データベーススペシャリスト試験 午前Ⅱ 問5
この解説に誤りを見つけたら教えてください。直して、直した記録を残します。誤りを報告する(メールが開きます)