ホーム > 情報処理安全確保支援士試験 > 2024年 秋期

情報処理安全確保支援士試験 2024年 秋期 午前221


関係モデルにおける外部キーに関する記述のうち、適切なものはどれか。
外部キーの値はその関係の中で一意でなければならない。
外部キーはそれが参照する候補キーと比較可能でなくてもよい。
参照先の関係に参照元の外部キーの値と一致する候補キーが存在しなくてもよい。
一つの関係に外部キーが複数存在してもよい。(正解)

解説

関係モデルにおける外部キーは、データベースの整合性を保つために非常に重要な概念です。各選択肢について説明しながら、なぜ「エ」が正解なのかを詳しく解説します。

外部キーとは?

外部キー(Foreign Key)は、ある関係(テーブル)の中の属性(列)で、別の関係の候補キー(Uniqueなキー)を参照するために用いられます。これにより、関連するデータ同士の整合性(リファレンス・インテグリティ)を保つことができます。

選択肢の解説

ア: 外部キーの値はその関係の中で一意でなければならない。
→ これは誤りです。外部キーは参照先テーブルの候補キーを指す必要がありますが、外部キー自体が属するテーブルの中で一意である必要はありません。
例として、「社員テーブル」に部署IDの外部キーがあり、複数の社員が同じ部署IDを持つことは普通です。
イ: 外部キーはそれが参照する候補キーと比較可能でなくてもよい。
→ これは誤りです。外部キーが参照する候補キーと「型」や「ドメイン(値の範囲)」が一致していなければなりません。比較可能でなければ整合性チェックができません。
ウ: 参照先の関係に参照元の外部キーの値と一致する候補キーが存在しなくてもよい。
→ これは誤りです。参照先に一致する値が存在しなければ外部キー制約に違反し、参照整合性が破壊されます。ただし、外部キーが「NULL」を許容する場合、値がない(NULL)場合は整合性チェックが適用されません。
エ: 一つの関係に外部キーが複数存在してもよい。
→ これは正しいです。1つのテーブルの中に複数の外部キー属性を持つことはあり得ます。例えば、社員テーブルに「部署ID」と「勤務地ID」があり、どちらも別のテーブルを参照するケースです。

まとめ

  • 外部キーは、「参照先の候補キーと同じ型で、参照先に存在する値を持つ必要」があります。
  • 外部キーの値は一意である必要はなく、複数の外部キーが同じテーブルに存在しても問題ありません。
  • したがって、正しい選択肢は「エ」となります。

外部キー制約を正しく理解することは、データベース設計や運用で非常に重要です。リファレンス整合性を保つことで、データの矛盾やエラーを防げますので、この考え方をしっかり押さえてください。
← 前の問題へ次の問題へ →

©︎2025 情報処理技術者試験対策アプリ