デーブルとは何か
- デーブルとは共通点を持ったレコードの集合
- テーブルは英語なら複数形or複数名詞でかける
テーブルの構成要素
キー
- キーとなる文字列には、コードやIDなどの表記体系の定まった固定長文字列を用いる
主キー
- 一意に識別
- デーブルには重複行は存在できない
- 候補キー:主キーになる候補が複数あるときのそれぞれのキー
- スーパーキー:無関係のものを付け加えた時のキー
外部キー
- 二つのテーブル間で設定
- 外部キーによってテーブルに対して制約を加える
- 参照整合制約
- 外部キーは親子関係がある
- 削除するときは子から
制約
代表的な使うことができる制約
- NOT NULL制約
- 一意制約:ある列に対して一意性を求める制約
- CHECK制約:ある列の取りうる範囲に対する制約。複数の列にまたがる制約は作れない
テーブルと列の命名規則
テーブル
- 使える文字は半角アルファベット、半角数字、
_
- 初めの文字はアルファベット
- DBMSが設定する範囲内では同じ名前を設定することはできない(この範囲をドメインまたはスキーマという)
列
- 同じテーブルに同じ名前の列はつけられない
第1正規化形
定義:一つのセルには一つの値しか含まない
第2正規形
定義:部分関数従属を完全に解消した形
※ 二つの属性AとBがある場合にAが決まればBも一つに決まる場合にBはAに関数従属しているという(A→Bと書く)
第3正規形
定義:推移的部分関数従属を完全に解消した形
※ A→B、B→Cの関数従属が成立しているときにA→Cという二段階の関数従属性があるときに数的従属性と呼ぶ
ボイスーコッド正規形(3次と4次の間)
定義:非キーからキーへの関数従属をなくした状態
- 非可逆な分解を行ってしまう恐れがある
- 1対多になるように分解する
第4正規形
定義:多値従属性が複数存在するテーブルを分割することで作られる