データベースに色々あるキーについて、調べてみたら7種類もあったので備忘録的に列挙してみた。(データベーススペシャリストの勉強)

データベースに色々あるキーについて、調べてみたら7種類もあったので備忘録的に列挙してみた。(データベーススペシャリストの勉強)

データベースでキーと言うと、目的のレコードを特定するためのカラムの事を言います。
学生番号や社員番号などが一般的。

以下の二種類は必須
1,主キー(primary key) = これが一番有名。リレーショナルデータベースでは必ず設定しないとダメ!
2,外部キー(foreign key) = これも有名。他テーブルの主キーと結合するために使うキー

主キー関係、ここいらへんからマイナー。
3,候補キー(candidate key) = 主キーの候補になるような組み合わせの事。具体的には、一意に識別&極小(最小)である事(Null値があってもOK!名簿なら電話番号やメアドなど)
4,代理(代替)キー(alternate key) = 候補キーで主キーに採用しなかったキー(候補キーは複数ありうるので)
5,自然キー(natural key) = 入力された値を、主キーとして使うキー(代用キーの反対、電話番号やメアドなどは、システム側が用意しなくても基本的に一意なので)
6,代用キー(surrogate key) = システム側が自動採番された値を、主キーとして使うキー(自然キーの反対、学生番号や社員番号などのID番号。電話番号やメアドなどは一意でも変更されたりするので、こちらの方が良い。)

あまり意味がない系
7、スーパーキー(super key) = レコードを一意に識別できればどんな組み合わせでもOKなキー。全カラムの組み合わせでもOK!

代理キーと代用キーが紛らわしいな(^_^;)