修了試験 2022-07-24実施分 基本情報技術者試験 問29
関係データベースの“注文”表の“顧客番号”は,“顧客”表の主キー“顧客番号”を参照する外部キーである。 このとき,参照の整合性を損なうデータ操作はどれか。 ここで,ア〜エの記述におけるデータの並びは,それぞれの表の列の並びと同順とする。 〔注文〕 伝票番号|顧客番号/0001|C005/0002|K001/0003|C005/0004|D010 〔顧客〕 顧客番号|顧客名/C005|福島/D010|千葉/K001|長野/L035|宮崎
正答3
解説
正解は3です。 参照の整合性とは、外部キーの値が、参照先の表の主キーに必ず存在するという制約です。 本問では、“注文”表の顧客番号には“顧客”表にある顧客番号しか入れられません。 【選択肢別解説】 1:× L035(宮崎)の行は、“注文”表のどの行からも参照されていません。 削除しても参照先を失う注文は生じないので、参照の整合性は損なわれません。 2:× 顧客番号D010は、“顧客”表に千葉として存在します。 この行を追加しても参照先が存在するので、参照の整合性は保たれます。 3:○ 顧客番号F020は、“顧客”表に存在しません。 存在しない顧客を参照する注文ができてしまうので、参照の整合性が損なわれます。 4:× 参照する側である“注文”表の行を削除しても、参照先のない外部キーは生じません。 そのため、参照の整合性は損なわれません。 【ポイント】 参照の整合性を損なう操作は主に2種類です。 1つは、参照する側の表に、参照先に存在しない値を追加・更新することです。 もう1つは、参照される側の表から、参照されている行を削除することです。まとめて解く
修了試験 2022-07-24実施分を通しで解く(80問)→