SQLにおいて、A表の主キーがB表の外部キーに
よって参照されている場合、各表の行を追加・削除
する操作の参照制約に関する制限について、正しく
整理した図はどれか。ここで、△印は操作が拒否され
る場合があることを表し、○印は制限なしに操作が
できることを表す。
ア ┌──┬──┐ イ ┌──┬──┐
│追加│削除│ │追加│削除│
┌──┼──┼──┤ ┌──┼──┼──┤
│A表│ ○ │ △ │ │A表│ ○ │ △ │
├──┼──┼──┤ ├──┼──┼──┤
│B表│ △ │ ○ │ │B表│ ○ │ △ │
└──┴──┴──┘ └──┴──┴──┘
ウ ┌──┬──┐ エ ┌──┬──┐
│追加│削除│ │追加│削除│
┌──┼──┼──┤ ┌──┼──┼──┤
│A表│ △ │ ○ │ │A表│ △ │ ○ │
├──┼──┼──┤ ├──┼──┼──┤
│B表│ ○ │ △ │ │B表│ △ │ ○ │
└──┴──┴──┘ └──┴──┴──┘
参照制約は、DBMSにおいて、データの追加や更新及び削除の際に、関連する
データ間で不一致を発生させないようにするものである。
A表の主キーがB表の外部キーに
よって参照されている例として、
B表が売上表、A表が商品コードマスターのような場合が該当する。
売上表 (B表) に追加する時、商品コードマスター (A表) に存在しないコードが
指定された場合、操作を拒否する必要がある。
また、商品コードマスター (A表) から商品コードを削除する場合、
売上表 (B表) にレコードが存在する場合も、操作を拒否する必要がある。
従って、A表の行を削除する際と、B表に行を追加する際に
操作が拒否される場合がある。
EXCEL VBAのご相談なら ファーストマクロ へ
タグ:参照制約