トップ > スキル : IT系ラーニング > 技術要素 > データベース

IT系ラーニング_技術要素

正規化

整合性制約の3つの約束事

  • 制約1:主キー制約(一意性制約)
       表には必ず、レコードを一意に特定できる主キーが必要である。
  • 制約2:外部キー制約(参照制約)
       表の中で他の表の値を参照する外部キーは、他の表の中に存在する値でなければならない。
  • 制約3:検査制約
       データベースのフィールドの値は決められた条件を満たしたものでなければならない。

正規化とは、元の表からデータの繰り返しや重複する部分を取り除き、表自体をシンプルで整合性を持った複数の表を分けることです。

正規化

正規化をする前の状態を非正規形といいます。
一人につき複数の科目(繰り返しデータ)があり、2行になっているので、このままでは、関係データベースの表として扱うことはできません。

第1正規形

正規化(第1正規形)

表の中で2行になってしまっている繰り返しデータをなくし、1行で表せる形式に直します。

第2正規形

正規化(第2正規形)

受験番号と科目の組合せを主キーとした得点表を作成します。また、受験番号から受験者データを分離します。ただし、コース名はコース番号のみで決められることから、受験者表からさらに分離することが可能です。
よって、第2正規形は第3正規形への途中段階で、あまり重要ではないということです。

第3正規形

正規化(第3正規形)

第3正規形は、第2正規形で分離していない部分をさらに分離します。
分離が終わったら、それぞれの項目は、その表にある主キーでのみ特定されます。

正規化(第3正規形)

他の表との結びつきを表す項目のことを外部キーといい、外部キーは他の表では主キーになっています。

正規化の手順

  • Step 1. 繰り返し項目を別表に分割する。
  • Step 2. 部分関係従属している項目を別表に分割する。
  • Step 3. 推移的関数従属しているものを別表にする。(無ければStep 2で完了)

【正規化】