基本情報技術者試験 - 令和5年1月修了 - 問25
事務室が複数の建物に分散している会社で,PCの設置場所を管理するデータベースを作ることになった。“資産”,“部屋”,“建物” の三つの表を作成し,各表の関連付けを行った。新規にデータを入力する場合は,参照される表のデータが先に存在している必要がある。各表へのデータの入力順序として,適切なものはどれか。ここで,各表の下線部の項目は,主キー又は外部キーである。
資産
部屋
建物
資産
| PC番号 | 建物番号 | 部屋番号 | 機種名 |
| 建物番号 | 部屋番号 | 部屋名 |
| 建物番号 | 建物名 |
| ア | 資産 → 建物 → 部屋 |
|---|---|
| イ | 建物 → 部屋 → 資産 |
| ウ | 部屋 → 資産 → 建物 |
| エ | 部屋 → 建物 → 資産 |
答え : イ
分野 : テクノロジ系 › 技術要素 › データベース › データベース設計
資産,部屋,建物という三つの表があり,それぞれが関連付けられているデータベースにおいて,外部キーの制約を満たしながらデータを入力する順序を考える問題です。外部キーとは,他の表の主キーを参照する項目のことで,参照される側のデータが先に存在していなければ,参照する側のデータを登録することができません。
まず,建物表には他の表を参照する項目がないため,最初に入力可能です。次に,部屋表は建物番号を参照しているため,建物表にデータが登録された後でなければ入力できません。
最後に,資産表は建物番号と部屋番号の両方を参照しているため,建物表と部屋表の両方にデータが存在した後でなければ入力できません。従って,入力順序は建物,部屋,資産の順になり,選択肢「イ」が正解です。
他の選択肢は,参照関係を無視した順序になっているため,外部キー制約に違反してしまいエラーが発生します。データベース設計では,参照される表から順にデータを登録するという原則を押さえておくことが重要です。
分野 : テクノロジ系 › 技術要素 › データベース › データベース設計
同一問題 : 〔平23修12問32〕
解説 : 資産,部屋,建物という三つの表があり,それぞれが関連付けられているデータベースにおいて,外部キーの制約を満たしながらデータを入力する順序を考える問題です。外部キーとは,他の表の主キーを参照する項目のことで,参照される側のデータが先に存在していなければ,参照する側のデータを登録することができません。
まず,建物表には他の表を参照する項目がないため,最初に入力可能です。次に,部屋表は建物番号を参照しているため,建物表にデータが登録された後でなければ入力できません。
最後に,資産表は建物番号と部屋番号の両方を参照しているため,建物表と部屋表の両方にデータが存在した後でなければ入力できません。従って,入力順序は建物,部屋,資産の順になり,選択肢「イ」が正解です。
他の選択肢は,参照関係を無視した順序になっているため,外部キー制約に違反してしまいエラーが発生します。データベース設計では,参照される表から順にデータを登録するという原則を押さえておくことが重要です。