ITパスポート試験 過去問解説

主キーとは?ITパスポート試験 2016年 (平成28年 秋期) 問95を解説

ITパスポート試験 2016年 (平成28年 秋期) 問95は、主キーに関する理解を問う問題です。検索から入っても、問題文、選択肢、正解、解説、各選択肢がなぜ違うかをこのページだけで確認できます。

問題文

関係データベースにおける主キーに関する記述のうち,適切なものはどれか。

この問題の出題ポイント

  • 主キーの定義だけでなく、問題文中の条件がどの選択肢に当てはまるかを確認する。
  • テクノロジ系分野では、用語の目的・主体・責任範囲の違いが選択肢で問われやすい。
  • 関連タグ: 主キー、関係データベース、複合主キー。

選択肢

  1. 主キーに設定したフィールドの値に1行だけならNULLを設定することができる。
  2. 主キーに設定したフィールドの値を更新することはできない。
  3. 主キーに設定したフィールドは他の表の外部キーとして参照することができない。
  4. 主キーは複数フィールドを組み合わせて設定することができる。正解

正解

: 主キーは複数フィールドを組み合わせて設定することができる。

解説

リレーショナルデータベースにおける主キー(primary key)は,表の各行(レコード)を一意に識別するために設定するフィールドである. 主キーには2つの重要な制約があり,(1)NOT NULL制約:NULLを設定できない,(2)UNIQUE制約:値が表内で一意でなければならない,という条件を満たす必要がある. また,1つのフィールドで一意性を確保できないテーブルでは,複数のフィールドを組み合わせた複合主キー(合成主キー)として設定することも可能で,複合キーは関連テーブル等で広く使われる. 主キーは他表の外部キーから参照されるのが典型用途で,他表からの参照を禁じる制約はない. 値の更新も一意性が保たれれば技術的には可能.

なぜ他の選択肢が違うのか

  • 誤り. 主キーに設定したフィールドの値にはNULLを設定することはできない(NOT NULL制約). 「1行だけならNULLを設定できる」という例外はなく,主キー制約上,いかなる行においてもNULL値は許容されない. 一意識別のための制約として全行で値を持つ必要があるためである.

  • 誤り. 主キーに設定したフィールドの値は技術的には更新可能で,一意性が保たれていれば変更できる. 「更新することはできない」と断定するのは厳密には誤りで,整合性管理上,主キー値の変更は外部キー参照に影響するため推奨されないが,絶対に不可能というわけではないためこの選択肢は不適切である.

  • 誤り. 主キーは他表の外部キーから参照される典型用途を持つフィールドで,参照を禁じる制約はない. むしろ主キーが外部キー参照の対象となるのが標準的なリレーショナルDB設計の基本パターンであり,「参照できない」とする本選択肢はリレーショナルDB設計の原則に明らかに反する記述で誤りである.

  • エ(正解)

    正しい. 主キーは複数のフィールドを組み合わせて設定すること(複合主キー・合成主キー)が可能であり,本問の記述に合致するため. 単一フィールドで一意性を確保できないテーブル(関連テーブルなど)で複合主キーとして活用される,リレーショナルDB設計の基本的な仕組みとして広く用いられる手法である.

解き方の整理

主キーの問題では、選択肢のキーワードだけで判断せず、問題文が示す条件と正解選択肢の説明が一致しているかを見ます。誤答選択肢は、似た用語を混ぜる、主体を入れ替える、目的や範囲を広げすぎる、という形で作られることが多いため、選択肢別解説まで確認しておくと復習効率が上がります。

関連問題

前後の問題

2016年 (平成28年 秋期) の関連する問題

復習を続ける

間違えた問題、苦手タグ、模試履歴を保存して復習する導線を用意しています。広告なしPro、弱点分析、復習リマインダーは段階的に提供予定です。