参照整合性制約
サークル、社員のリレーションがあったとする
サークル
サークル名 | 部屋番号 | 所属人数 |
---|---|---|
サッカー | ||
テニス |
社員
社員番号 | 氏名 |
---|---|
001 | 山田 |
002 | 吉久保 |
主キーどうしを繋げたい
中間テーブル噛ませる
所属テーブル
サークル名 | 社員番号 |
---|---|
テニス | 001 |
テニス | 002 |
これでサークルと社員が繋がって整合性がとれた状態になる。
これを整合性制約という。これをスキーマで定義する
あるリレーション中のある属性が外部キーとなって別のリレーションの主キーを参照する
この場合、
中間の所属テーブルのサークル名、社員番号は外部キーであり、
これらの組み合わせが主キーとなる?
同じテーブル内でこの制約が成り立つ場合もある
社員番号 | 名前 | 上司 |
---|---|---|
1 | 山田勃也 | 3 |
2 | 下野隆起 | 4 |
3 | ファン・ザイ | 5 |
社員番号カラムが主キー、上司カラムが外部キー
この外部キーの参照元は同じテーブルの社員番号。
必ず異なるリレーションというわけではない。同じリレーション内でも成り立つことは覚えておきたい
次、
リレーショナルデータベースを理解して操作するために
リレーショナル代数
リレーショナル論理
動くだけならsqlの文法だけでいい
でも書いたsqlがどう動くかを理解できるとつよつよデータベースマンになれる
データベースのリレーションに、演算子をいれて変形して、自分に都合のいい形にして出す。
これがリレーショナル代数のざっくりした考え方