!!!正規化(normalization) [Database] !!第1正規形(1NF) ,定義,条件 ,関係Rがその属性に非単純定義域(繰返しグループ)をひとつも含まないもの,繰返しグループの排除 *フラットな表に変換 *繰返し部分を分解(繰返しグループに元の主キーを埋め込んで関係を分解) !!第2正規形(2NF) ,定義,条件 ,関係Rが第1正規形である。関係Rのキー以外の属性はすべて、関係Rの各候補キーに完全関数従属である,部分関数従属の排除 !!第3正規形(3NF) ,定義,条件 ,係Rが第2正規形である。関係Rのキー以外の属性はすべて、関係Rの各候補キーに推移関数従属しない,推移関数従属の排除 !!ボイス-コッドの第3正規形(BCNF) ,定義 ,関係Rが第1正規形である。関数従属のすべての決定項は候補キーである !!第4正規形(4NF) ,定義 ,関係Rが第1正規形である。関係Rには自明な多値従属しか存在しない !多値従属性 **属性 X の実現値がきまると属性 Z が決まるとき、 属性 X に属性集合 Yを加えて決まる属性も同じ実現値を持つとき、 属性 Z は属性 X に多値従属である **X →→ Z と表記 **X →→ Y も成り立つ場合、対象性のある多値従属性、自明でない多値従属性といい X →→ Y|Z と表記 **要するに、Y , Z 値の集合が X 値のみに依存しそれぞれ Y , Z 値と独立している。 関数従属は X →→ Y の場合、Y 側は Y 値の集合が対応するが、X → Y の場合 Y 側はただ1つの値にに決まるという意味で、多値従属の特殊な場合である (多値従属は、関数従属の一般化) *完全正規型 !!第5正規形(5NF) ,定義 ,関係R( X1 , X2 , ・・・ Xm )を射影により分解した関係を R1( X1 ) , R2( X2 ) , ・・・ Rm( Xm )とする。 R1 , R2 , ・・・ Rm を自然結合により結合すると、意味的妥当性をもって元の関係Rが得られる場合、 R と R1 , R2 , ・・・ Rm の間に結合従属性があるという。 再結合するともとの関係を生成できるような射影により得られる R1,R2,・・・Rm を第5正規形という。 *完全正規型 !!参考 http://publib.boulder.ibm.com/infocenter/db2luw/v9/topic/com.ibm.db2.udb.admin.doc/doc/c0004752.htm