問題
問66
関係データベースにおいて、主キーを設定する理由はどれか。
- 算術演算の対象とならないことが明確になる。
- 主キーを設定した列が検索できるようになる。
- 他の表からの参照を防止できるようになる。
- 表中のレコードを一意に識別できるようになる。
[出典:ITパスポート試験 令和元年度 問66]
スポンサーリンク
正解
正解は「エ」です。
解説
主キー(Primary Key)は、関係データベースの各表(テーブル)において、それぞれのレコード(行)を一意に識別するために設定される列または列の組み合わせです。つまり、主キーが同じ値になるレコードは存在してはならず、この一意性により、データの整合性と識別性が保証されます。
たとえば、社員管理テーブルでは「社員番号」が主キーになることが多く、どの社員を指しているかを明確に識別するために使用されます。選択肢エの「表中のレコードを一意に識別できるようになる」という説明は、この主キーの本来の役割を正しく表しています。
一方、他の選択肢は主キーの目的や効果を誤ってとらえています。主キーは演算のためのものでも、検索可能にするためだけのものでもなく、参照防止とは逆に他の表からの参照元(外部キー)として活用されます。
ア(算術演算の対象とならないことが明確になる):
主キーは数値か文字列かに関係なく設定可能であり、算術演算の対象になるかどうかとは関係ありません。
イ(主キーを設定した列が検索できるようになる):
検索は主キーでなくても可能であり、インデックス設定などが検索性能に影響します。
ウ(他の表からの参照を防止できるようになる):
むしろ主キーは他の表の外部キーとして参照されるため、参照を防止するものではありません。
難易度
この問題は主キーの定義とその基本的な役割を問うもので、データベースを初めて学ぶ方でも教科書や基本書にある説明を理解していれば解答可能です。選択肢のうち一つだけが明確に一意性を示す内容であるため、消去法でも対応しやすい問題です。
スポンサーリンク
用語補足
主キー(Primary Key):
データベースにおいて、各レコードを一意に識別するために使用される列です。同じ値が複数存在してはならず、空欄(NULL)も許されません。
レコード:
データベースの表における1行分のデータで、個別のデータ項目(フィールド)が集まったものです。たとえば1人の社員の情報が1レコードになります。
外部キー(Foreign Key):
他の表の主キーを参照する列で、複数の表を関連づける際に使用されます。主キーと外部キーの関係が、データの整合性を保つのに重要です。
対策
主キーの基本的な役割と制約条件(重複不可・NULL不可)をしっかり理解することが大切です。実際のデータベースのテーブル設計を例に、一意性がなぜ必要かを意識して学習すると効果的です。外部キーや検索性能との違いもあわせて整理しておきましょう。