AP#2 |関係データベース

2 アクセス

キー

スーパーキー:行(タプル)を一意に識別するための列(属性)の集合

候補キー:スーパーキーのうち、必要最小限の列の組み合わせ

主キー:候補キーのうち、意味的に最もふさわしいもの

主キー制約

  • 一意性制約:主キーは必ず一意である(主キーが重複する行は存在しない)
  • 非ナル制約:主キーに含まれる列はNULLをとらない

代理キー:候補キーのうち、主キーに選ばれなかったもの

外部キー:別の関係表の主キーを持つ列、他の表を参照する

参照制約

  • 外部キーの実現値が参照先の表に必ず存在する

関係データベースの正規化

第1正規形

繰り返し属性が存在しない

第1正規形ではない表

社員番号商品販売数商品販売数
01りんご3みかん1

第1正規形の表

社員番号商品販売数
01りんご3
01みかん1

第2正規形

候補キーの一部に従属する部分関数従属が存在しない

部分関数従属を独立させるように表を分割する

第2正規形ではない表(主キーは学生番号と図書番号の複合キー)

学生番号図書番号図書名貸出日
0111統計学2024/9/30
0112心理学2024/10/1

図書名は図書番号のみに従属するので、これを分割する。

第2正規形

学生番号図書番号貸出日
01112024/9/30
01122024/10/1
貸出表
図書番号図書名
11統計学
12心理学
図書表

第3正規形

候補キーから始まる推移的関数従属が存在しない、言い換えると非キー同士の関数従属が存在しない

非キー同士の関数従属を独立させるように表を分割する

Comments

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です