平成28年度 春期 応用情報技術者試験 午前 問29
テクノロジ/データベース次の表において,“在庫”表の製品番号に定義された参照制約によって拒否される可能性がある操作はどれか。ここで,実線の下線は主キーを,破線の下線は外部キーを表す。 在庫(在庫管理番号,製品番号,在庫量):主キーは在庫管理番号,製品番号は製品表を参照する外部キー 製品(製品番号,製品名,型,単価):主キーは製品番号
出典:平成28年度 春期 応用情報技術者試験 午前 問29
- ア“在庫”表の行削除
- イ“在庫”表の表削除
- ウ“在庫”表への行追加
- エ“製品”表への行追加
正解:ウ
解説
“在庫”表の製品番号は“製品”表の製品番号を参照する外部キーです。参照制約があると,“製品”表に存在しない製品番号を“在庫”表に追加しようとした場合に,参照整合性違反として拒否される可能性があります。
選択肢ごとの解説
- ア誤り。“在庫”表の行削除は,参照している“製品”表の行の存在を必要としないため,参照制約による拒否の対象にはなりません。
- イ誤り。“在庫”表全体の削除も同様に,他の表からの参照を断ち切る操作ではないため,通常は参照制約で拒否されません。
- ウ正しい。存在しない製品番号を指定して“在庫”表に行を追加しようとすると,参照整合性違反として拒否される可能性があります。
- エ誤り。“製品”表への行追加は,新しい製品番号を追加するだけであり,“在庫”表の外部キー制約に違反することはありません。