インフラエンジニアのねるです。
データベーススペシャリスト試験を4月に受けるべく、勉強中です。
今回ですけども、データベースの関数従属性について、
解説していきたいと、思います。
1.データベースの関数従属性とは
関数従属性には3種類の関係があります。1つ1つ解説していきます。
①完全関数従属性とは
完全関数従属性とは、
{A,B}→Cは成り立つが、A→CやB→Cが成り立たない関係のことです。
左側の項目が完全な状態でのみ従属すると感覚的に覚えましょう。
②部分関数従属性とは
部分関数従属性とは、
{A,B}→Cが成り立ち、A→CかB→Cのどちらかが成り立つ関係のことです。
部分的な状態でも従属すると感覚的に覚えましょう。
③推移的関数従属性とは
推移的関数従属性とは、
A→Bが成り立ち、B→Cが成り立ち、B→Aが成り立たない場合に、
CはAに推移的関数従属していると言えます。
推移すると従属していると感覚的に覚えましょう。
2.正規形と関数従属性の関係とは
正規形(正規化)と関数従属性には大きな関わりがあります。
第1正規形の状態から第2正規形へ正規化する場合、
①と②の関数従属性である完全関数従属と部分関数従属を取り除きます。
第2正規形の状態から第3正規形へ正規化する場合、
③の関数従属性である推移的関数従属性を取り除きます。
「この表が第○正規形の表か?」という、よく出る問題があります。
これらを読み解く際には、完全関数従属性や部分関数従属性が含まれているか、
推移的関数従属性が含まれているかを観点に見ると、簡単に解くことが出来ます。
この記事が少しでもいいなと思ったら「カラースター」をお願いします。
「読者になる」ボタンからこのブログの読者登録もして頂けると嬉しいです!
今回はこれで終わりたいと思います。皆さん一緒に勉強頑張りましょう。
ありがとうございました。
|