戦国IT - 情報処理技術者試験の過去問対策サイト
お知らせお問い合わせ料金プラン

応用情報技術者 2009年 秋期 午前233


問題文

関係データベースにおいて、“注文”表から“商品”表へ参照制約が設定されている場合の記述のうち、適切なものはどれか。

選択肢

“商品”表のタプルが存在すれば、それに対応する“注文”表のタプルは存在する。
“商品”表のタプルと“注文”表のタプルはそれぞれ独立に存在する。
“注文”表のタプルが消滅すれば、それに対応する“商品”表のタプルも消滅する。
“注文”表のタプルが存在すれば、それに対応する“商品”表のタプルは存在する。(正解)

関係データベースにおける参照制約の理解【午前2 解説】

要点まとめ

  • 結論:参照制約では「子テーブルのレコードが存在するなら、親テーブルの対応レコードも必ず存在する」ことが保証されます。
  • 根拠:参照制約はデータの整合性を保つため、外部キーが指す親テーブルのレコードが必須となるためです。
  • 差がつくポイント:親子関係の方向性を正確に理解し、どちらが参照される側かを見極めることが重要です。

正解の理由

選択肢エ「“注文”表のタプルが存在すれば、それに対応する“商品”表のタプルは存在する。」が正解です。
これは“注文”表が“商品”表を参照しているため、注文データが存在するなら必ずその注文で指定された商品データも存在しなければならないという参照制約の基本ルールに合致します。

よくある誤解

「親テーブルのレコードが存在すれば子テーブルのレコードも存在する」と誤解しやすいですが、参照制約は逆方向の保証です。
また、参照制約があるからといって子テーブルの削除が親テーブルの削除を引き起こすわけではありません。

解法ステップ

  1. 参照制約の定義を確認する(外部キーが親テーブルの主キーを参照する)。
  2. “注文”表が子テーブル、“商品”表が親テーブルであることを理解する。
  3. 子テーブルのレコードが存在する場合、対応する親テーブルのレコードが必須であることを確認する。
  4. 選択肢の文言を親子関係の方向に照らし合わせて正誤を判断する。

選択肢別の誤答解説

  • ア: 「親テーブルのレコードがあれば子テーブルのレコードもある」と誤認。参照制約は子→親の存在を保証する。
  • イ: 「両テーブルが独立」としているが、参照制約がある以上独立ではない。
  • ウ: 「子テーブルの削除で親テーブルも削除」とあるが、参照制約は通常このような連鎖削除を保証しない(オプション設定次第)。
  • : 正解。子テーブルの存在が親テーブルの存在を保証する。

補足コラム

参照制約はデータベースの整合性を保つ重要な機能で、外部キー制約とも呼ばれます。
削除や更新時の動作(CASCADEやSET NULLなど)は制約設定で変わりますが、基本的な存在保証は常に成り立ちます。
また、参照制約違反はデータの不整合を防ぐため、挿入や更新時にエラーとなります。

FAQ

Q: 参照制約があると親テーブルのレコードを削除できないのですか?
A: 基本的には子テーブルに参照されている親レコードは削除できませんが、CASCADE設定があれば連鎖削除されます。
Q: 参照制約はどのように設定しますか?
A: 外部キー制約として、子テーブルのカラムに親テーブルの主キーを参照する制約を定義します。

関連キーワード: 参照制約、外部キー、データ整合性、関係データベース、主キー、子テーブル、親テーブル
← 前の問題へ次の問題へ →
戦国ITクイズ機能

\ せっかくなら /

応用情報技術者
クイズ形式で学習しませんか?

クイズ画面へ遷移する

すぐに利用可能!

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

このサイトについてプライバシーポリシー利用規約特商法表記開発者について