
はじめに
データベースを学び始めるときに、よく出てくる重要な用語に主キーと候補キーがあります。この2つは似ているようで意味が少し違います。この記事では、中学生でも理解できるように、主キーと候補キーの違いについてわかりやすく解説します。
これを読めばデータベースの基本がしっかりわかり、今後の学習や仕事にも役立てられます。
主キーとは何か?
まず主キーとは、データベースのテーブルで、その行(レコード)を一意に識別するためのキー(列)のことです。例えば、学校の生徒情報を管理するテーブルで「学生ID」があれば、それが主キーになります。
主キーに選ばれた列は重複する値を持てず、値が必ず存在する(NULL不可)という特徴があります。これによりテーブルの中で一つだけの特別な値となり、それを見ればどの生徒の情報かすぐにわかります。
さらに主キーはテーブルに必ず一つだけ設定されます。つまり、「学生ID」と「生徒の名前」の2つを主キーにすることはできません。
このように、主キーは確実にレコードを区別する役割を持つカギと考えてください。
候補キーとは何か?
次に候補キーですが、これは主キーになりうるキーの候補のことを指します。
候補キーは1つ以上テーブルの中に存在し、どれも一意でNULLを含まない列または列の組み合わせです。
先の例でいえば、「学生ID」だけでなく、「生徒のメールアドレス」も一意に生徒を識別できるなら、これも候補キーになります。
つまり、主キーは候補キーの中から特に一つ選ばれたキーです。
候補キーは複数ある場合もあり、その中の一つが主キーに指定され、残りは代替キー(セカンダリキー)と呼ばれることがあります。
主キーと候補キーの違いを表でまとめてみよう
項目 | 主キー | 候補キー |
---|---|---|
定義 | テーブル内の各レコードを一意に識別するキー | 主キーとなり得る一意のキー |
数 | 1つだけ | 複数存在可能 |
重複 | 重複不可 | 重複不可 |
NULL(空値) | NULL不可 | NULL不可 |
役割 | レコードの識別に必須 | 主キー選択の候補 |
なぜ候補キーから主キーを選ぶのか?
候補キーはテーブルの中で複数存在するかもしれません。しかし、データベースの管理が簡単になるようにその中の一つだけを主キーに選びます。
主キーに選ばれたキーがあると、それを使ってレコードを特定しやすくなり、他のテーブルと関連付けるときにも共通の識別子として機能します。
また、主キーはインデックスとしても使われるため、検索や操作のスピードが速くなる利点もあります。
残った候補キーも代替キーとして管理されることがありますが、主キーほどの特別な役割は持ちません。
まとめ
今回の記事は主キーと候補キーの違いについて説明しました。
- 主キーはテーブルでレコードを一意に識別するための特別なキーで、必ず一つだけ設定されます。
- 候補キーは主キーの候補となる一意のキーで複数存在する場合があります。
- 主キーは候補キーの中から選ばれ、効率的なデータ管理に役立ちます。
この違いを理解すると、データベース設計や利用がぐっとわかりやすくなり、実際に自分でテーブルを作るときにも役に立ちます。
ぜひ覚えておきましょう!
データベースの「候補キー」って、実はけっこう“選手”が多いんですよ。たとえば学生情報なら、学生ID、電話番号、メールアドレスなど複数の候補キーが考えられます。けれど実際に選ばれるのはその中からひとつだけ。だから候補キーは、未来の主キーたちとも言えますね。
なんだかスポーツのスター候補のようで面白いですよね。こんな考え方を知っていると、データベース設計もぐっとリアルに感じられます!
前の記事: « 古典語と現代語の違いとは?知られざる言葉の世界を解説!