過去問解きまくり研究所 ホーム

平成23年度 特別 午前 問28

データベース

外部キーに関する問題

“社員扶養家族”表の列“社員番号”の値が“社員”表の候補キーに存在しなければならないという制約はどれか。

答えと解説を見る

✓ これが正解ウ参照制約

解説

表をまたいで値の存在を求めるのが参照制約です。

設問の形をよく見ると、ある表の列の値が、別の表の候補キーに存在しなければならない、と二つの表を結び付けています。制約は、一つの表の中だけで判断できるものと、別の表を見に行かないと判断できないものに大きく分かれます。候補のうち、またぐ側にあるのは参照制約だけです。参照制約は、外部キーに入る値が、参照先の表に実際にある値でなければならない、という決まりです。この問いの言葉に置き換えれば、社員の一覧に載っていない社員番号を持つ扶養家族の行を作れない、ということになります。親のいない子を作らせない、と言い換えると働きがつかみやすくなります。効き目がよく分かるのは削除の場面です。参照されている側の行を消すと、参照している側の値が行き先を失いますから、削除を拒むのか、参照している行も併せて消すのか、値を空にするのか、といった振る舞いをあらかじめ決めておきます。参照先が候補キーだと書かれているのは、参照先の行が一つに定まる必要があるからです。一意であること自体は前提であって、この問いが尋ねている決まりそのものではない、という点に注意してください。

ほかの選択肢はなぜ違うのか

出典:平成23年度 特別 応用情報技術者試験 午前 問28

この解説に誤りを見つけたら教えてください。直して、直した記録を残します。誤りを報告する(メールが開きます)