問78
ITパスポート過去問 令和5年度(2023年)問78
関係データベースの主キーの設定に関する記述として,適切なものだけを全て挙げたものはどれか。
- a 値が他のレコードと重複するものは主キーとして使用できない。
- b インデックスとの重複設定はできない。
- c 主キーの値は数値でなければならない。
- d 複数のフィールドを使って主キーを構成できる。
選択肢
- ア:a,c
- イ:a,d
- ウ:b,c
- エ:b,d
- ア
- イ
- ウ
- エ
正解と解き方・学習ポイント(AI解説)
正解:イ
あなたの回答:未回答
主キーは、表の各行(レコード)を一意に識別するための列です。主キーの値は他の行と重複できず、複数列を組み合わせて主キー(複合主キー)にすることもできます。主キーの値は数値に限られず、文字列なども使用できます。
Point
主キーに求められる条件として、一意性(重複不可)と、複数列で構成できること(複合主キー)を理解しているかを確認する問題です。あわせて、主キーとインデックスの関係、主キーに使えるデータ型が数値に限定されないことを区別できるかが問われます。
解くために必要な知識
この問題を解くには、関係データベースにおける主キーの定義と制約の理解が必要です。
用語の整理
| 用語名 | 意味 |
|---|---|
| 主キー | 表の中で各行(レコード)を一意に識別するための列(または列の組合せ)です。主キーの値は重複できません。 |
| 関係データベース | データを表(リレーション)の形式で管理するデータベースモデルです。 |
| レコード / 行 | 表の横1行分のデータです。 |
| フィールド / 列 | 表の縦方向のデータ項目です。 |
| 複合主キー | 2つ以上の列を組み合わせて設定する主キーです。各列の値が単独で重複していても、組合せとして一意であれば主キーにできます。 |
他の選択肢に出てくる用語
| 用語名 | 意味 |
|---|---|
| インデックス | 検索を速くするための索引です。一般に、主キーを設定すると主キー列に対するインデックスが作成される実装が多いです。 |
問題の解法手順
選択肢a〜dを個別に判定する
| 記述 | 判定 | 理由 |
|---|---|---|
| a 値が他のレコードと重複するものは主キーとして使用できない。 | 正しい | 主キーは各行を一意に識別する必要があるため、同一表内で重複する値は許されません。 |
| b インデックスとの重複設定はできない。 | 誤り | 主キーに対してインデックス(または同等の索引)が作成されるDBMSが多く、主キーとインデックスは両立します。 |
| c 主キーの値は数値でなければならない。 | 誤り | 文字列など、DBMSが提供するデータ型の範囲で主キーにできます。 |
| d 複数のフィールドを使って主キーを構成できる。 | 正しい | 複数列の組で一意にする複合主キーを設定できます。 |
選択肢(組合せ)を決める
正しいのはaとdなので、a,dの組合せである「イ」が正解です。
選択肢ごとの解説
- ア:不正解
aは正しいですが、cは誤りです。主キーの値は数値に限られません。
- イ:正解
aとdはいずれも正しいです。主キーは重複できず、複数列の組合せで主キー(複合主キー)を構成できます。
- ウ:不正解
bとcはいずれも誤りです。主キーとインデックスが両立しないとはいえず、主キーの値も数値に限定されません。
- エ:不正解
dは正しいですが、bは誤りです。主キー設定とインデックスは一般に両立します。
まとめ
主キーは、表の各行(レコード)を一意に識別するための列です。主キーの値は他の行と重複できず、複数列を組み合わせて主キー(複合主キー)にすることもできます。主キーの値は数値に限られず、文字列なども使用できます。
※本解説は生成AIによる学習支援用の参考情報です。内容の正確性や最新性は保証されません。最終的な判断は、試験実施団体の公式資料をご確認ください。
テクノロジ系 > 技術要素 > データベース
aは正しいですが、cは誤りです。主キーの値は数値に限られません。
aとdはいずれも正しいです。主キーは重複できず、複数列の組合せで主キー(複合主キー)を構成できます。
bとcはいずれも誤りです。主キーとインデックスが両立しないとはいえず、主キーの値も数値に限定されません。
dは正しいですが、bは誤りです。主キー設定とインデックスは一般に両立します。