応用情報技術者試験 令和5年秋 午前問27 解説付き過去問
問題
関係モデルにおける外部キーの説明として、適切なものはどれか。
正解
解説
この問題は、関係データベースにおける「外部キー(Foreign Key)」の正しい定義について問うものです。
- 外部キーの定義
- 具体例
- 顧客マスタ(顧客ID, 氏名, 住所)
→ 主キーは「顧客ID」 - 注文データ(注文ID, 顧客ID, 商品名)
→ 「顧客ID」は、顧客マスタの「顧客ID」を参照する外部キー - 他の選択肢との違い
外部キーとは、ある関係(表)の属性、または属性の組であり、他の関係の候補キー(通常は主キー)を参照するものです。
外部キーは、リレーションシップ(表と表の関連)を表すために使用され、参照整合性を保つ役割を担います。
例えば、以下の2つの表を考えます。
このように、「注文データ」表の「顧客ID」は、「顧客マスタ」表の「顧客ID」を参照しており、これが外部キーの典型的な例です。
他の選択肢では、候補キー、主キー、スーパーキーなど、外部キーとは異なる概念が述べられています。
外部キーは「他の表の候補キーを参照する属性」である点が重要です。
したがって、外部キーの説明として適切なのは、ある関係の候補キーを参照する属性、又は属性の組です。