正規化

正規化の目的

関数従属性について

完全関数従属性

主キーの全ての項目を使って値が決定する関係

部分関数従属性

主キーの一部の項目を使って値が決定する関係

推移関数従属性

主キー以外の項目に従属する関係

第一正規形

非正規形から,繰り返し部分を排除した形

更新方法

  1. 非正規表に主キーを設定
  2. 繰り返し部分を分離
  3. 分離した表に主キーを設定

第二正規形

第一正規形から,部分関数従属している項目を取り除いた形

更新方法

  1. 主キーが複合キーの表を探す
  2. 部分関数従属している項目を別の表として分離
  3. 元の表に分離した表の主キーを残す

第三正規形

第二正規形から,主キーに推移関数従属している項目を取り除いた形

更新方法

  1. 主キー以外の項目で,関数従属している項目を探す
  2. 主キー以外の項目で関数従属している項目を別の表として分離
  3. 元の表に分離した表の主キーを残す
Tags: