どのデータを用いて主キーを設計するか
用語を設定しておく
業務データ
業務に関連するデータ
人工データ
技術側の都合で作った連番などのデータ
業務側で修正があっても影響しないもの
ナチュラルキー
業務データを主キーとしたもの
サロゲートキー
人工データを主キーとしたもの
複合主キー
2つ以上のデータの組を主キーとしたもの
その組の中身は、業務データかもしれないし、人工データかもしれない
主キーの候補としては以下の5パターンが取れる
①1つの業務データを主キーにする
②1つの人工的なデータを主キーとする
③2つ以上の業務データの組を主キーとする
④2つ以上の人工的なデータを主キーとする
⑤1つ以上の業務データと1つ以上の人工的なデータの組を、主キーとする
table:_
ナチュラルキー サロゲートキー 混在
単一キー ① ② -
複合主キー ③ ④ ⑤
サロゲートキー v.s. 複合主キーでは、前者を選ぶは、以下の対立
② v.s. ③④⑤
サロゲートキーを使うか、ナチュラルキーを使うか
できるだけサロゲートキーの導入を検討しつつ、本当に確実に不要なのであればナチュラルキーを採用するぐらいに捉えているmrsekut.icon
ナチュラルキーがある時はサロゲートキーは不要
①が使える場合は①を使う v.s. 常に②を使う