RDBMSにおける二次キー(セカンダリキー)とは?候補キーとの関係と具体例をわかりやすく解説
二次キー(セカンダリキー)とは
二次キー(Secondary Key)とは、主キーとして選ばれなかったキーのことです。ただし、主キーの候補となり得るキーであるという点は変わりません。
つまり、候補キーのうち主キーに選ばれなかったものが二次キーと呼ばれます。候補キー(Candidate Key)とは、主キーとして採用できる属性、または属性の組み合わせのことです。
注意: 二次キーは外部キー(Foreign Key)ではありません。両者はまったく別の概念なので、混同しないようにしましょう。
例1:学生テーブルの場合
まず、具体的な例を見てみましょう。
| Student_ID | Student_Enroll | Student_Name | Student_Age | Student_Email |
| 096 | 9122717 | Manish | 25 | aaa@gmail.com |
| 055 | 9122655 | Manan | 23 | abc@gmail.com |
| 067 | 9122699 | Shreyas | 28 | pqr@gmail.com |
この表では、Student_ID、Student_Enroll、Student_Email の3つが候補キーに該当します。これらの属性は学生のレコードを一意に識別できるためです。この中から任意の1つを主キーとして選択し、残りの2つが二次キーとなります。
例えば、Student_ID を主キーとして選んだ場合、Student_Enroll と Student_Email が二次キー(主キーの候補)になります。
例2:従業員テーブルの場合
次に、別の例を確認してみましょう。
| Employee_ID | Employee_No | Employee_Name | Employee_Email | Employee_Dept |
| 0989 | E7897 | Jacob | jacob@example.com | Finance |
| 0777 | E8768 | Anna | anna@example.com | HR |
| 0656 | E8789 | Tom | tom@example.com | Operations |
この表では、Employee_ID、Employee_No、Employee_Email が候補キーです。これらは従業員のレコードを一意に識別できます。ここから任意の1つを主キーとして選択すれば、残りの2つが二次キーとなります。
まとめ
二次キーとは、候補キーのうち主キーに選ばれなかったキーのことです。主キーの代替候補として機能し、検索や一意性の確認などに活用できる場合があります。外部キーとは役割も定義も異なる概念であるため、しっかりと区別して理解しておきましょう。
-
RDBMSの主要用語を徹底解説!データベース・主キー・外部キーの基礎知識
RDBMS(リレーショナルデータベース管理システム)には、データベース、テーブル、カラムなど、押さえておきたい重要な用語が数多くあります。ここでは、それぞれの用語の意味と役割を、具体例とともにひとつずつわかりやすく解説していきます。データベース(Database)データベースとは、「Student(学生)」や「Professors(教授)」などの複数のテーブルをまとめて管理する集合体のことです。システム全体のデータを格納する土台となる存在です。テーブル(Table)テーブルは、行(レコード)と列(カラム)で構成されるデータの集合です。例えば、学生情報を管理するテーブルは以下のようになります。S
-
RDBMSの外部キー(Foreign Key)とは?主キーとの関係を具体例で解説
外部キー(Foreign Key)とは外部キー(Foreign Key)とは、複数のテーブル同士をつなぐリンクを作成するための仕組みです。あるテーブルの列が、別のテーブルの主キー(Primary Key)を参照することで、テーブル間の関連性を表現できます。外部キーを設定することで、データベースは「参照先に存在しない値」の登録を防ぎ、データの一貫性(参照整合性)を保つことができます。ここでは、Employee(従業員)テーブルの「DeptID」を例に、外部キーの働きを見ていきましょう。テーブル例1:Employee(従業員テーブル)EmpIDEmpNameEmpAgeDeptIDテーブル例2:D