Sunday 17 April 2011

データベースの正規形

明日シーミーらしい。って、僕には関係ないけど :-p

授業をやるんで復習しているんですが、

 「こんなんだっけ?」

関数従属性とか insertion / deletion anomaly とかの用語は覚えていたんだけど。

Boyce Codd Normal form が第三正規形を含むってのは覚えてました。

第一正規形 カラムが、複数の値を持たない。集合値がない。
第二正規形 キーで、他の属性のすべての値が決まらないとだめ
第三正規形 キー以外の従属性があってはならない
BC正規形 関数従属性の決定項がキー

いや、もっとめんどくさい書き方しないとだめなんだろうけど。

 The key
 The whole key
 And nothing but the key
 So help me Codd.

てのがあるのね。なるほど。一つの関数従属性に一つのキーと値の組って感じか?

Beginning Database Design には、第四第五はあえて載ってないってのを発見しました。

第四正規形 候補キーではない属性への多値従属性がない
第五正規形 結合従属性の決定項がキー

う、確かに、これを説明するのは嫌だな。多値従属性とか言わずに独立な属性があるってなんで言わないの?

僕は、Universal relation とか Big table とか好きなんだけど、そこに関数従属性を考えて分割ってのは「Practical でない」とかいきなり書かれてる。なんでだろう?

どうも、なんか具体的なコードがないとピンと来ないな〜 正規形でないと、こんなコードが必要になるとか、そんなのが良いと思われる。

No comments: