メイン >> データベース勉強部屋
リレーショナルデータベースではデータを行(レコード)と列(フィールド)の
2次元(テーブル)で表現します。
特定のフィールド(またはフィールドの組み合わせ)をキーと言います。
なおフィールドのことを日本語で属性と言ったりします。
キーの種類は以下のとおりです。
スーパーキー
レコードを一意に識別できるフィールドの組み合わせ
複数あり
冗長OK
NULL OK
候補キー
スーパーキーの中で必要最小限の組み合わせ
複数あり
NULL OK
主キー
候補キーの中で、特にレコードを選択するものとして定めたキー
ただ1つ
NULL NG
非キー属性
候補キーに含まれないフィールド
外部キー
他テーブルの参照しているフィールド
他テーブルの候補キーである必要がある
最初の3つが少しややこしいですが、
スーパーキー > 候補キー > 主キー という関係をおぼえておけばよいでしょう。
スーパーキーは1レコードが特定できればよいので、「全てのフィールド」もスーパーキーのひとつになります。