平成22年度 高度共通 午前I(PM試験) 問11

分野:データベース(関係モデル・正規化・SQL・トランザクション/排他制御・障害回復・NoSQL・データベース設計)|実際に出題されたIPA過去問題

顧客は一般に複数の銀行に預金するものとして,顧客と銀行の関連を,E-R図で次のように表現する。このモデルを関係データベース上に"銀行"表,"口座"表,"顧客"表として実装する場合の記述として,適切なものはどれか。

問題の図表(IPA公式問題冊子より引用)
図表:IPA公式問題冊子より
  1.  "銀行"表から"口座"表へのカーディナリティは多対1である。
  2.  "銀行"表中に参照制約を課した外部キーがある。
  3.  "口座"表から"顧客"表へのカーディナリティは1対多である。
  4.  "口座"表には二つ以上の外部キーがある。
解答・解説を見る

正解:エ

AI解説

E-R図では銀行と口座が1対多、顧客と口座が1対多であり、口座は銀行と顧客の両方に従属する「多」側のエンティティである。多側の表は、参照する1側の表の主キーを外部キーとして持つため、口座表には銀行を参照する外部キーと顧客を参照する外部キーの2つ以上の外部キーが存在する。 ア: 誤り。1つの銀行には多数の口座があるため、銀行表から口座表へのカーディナリティは1対多である。 イ: 誤り。銀行表は参照される「1」側であり、外部キーを持つのは参照する側の口座表である。銀行表に外部キーは不要である。 ウ: 誤り。複数の口座が1人の顧客に対応するため、口座表から顧客表へは多対1である。 エ: 正しい。口座表は銀行表を参照する外部キー(銀行コードなど)と顧客表を参照する外部キー(顧客番号など)の2つ以上の外部キーを持つ。 💡 「外部キーは多側の表に置く」が関係データベース実装の大原則である。多対多の関連や複数の1対多が集まるエンティティ(連関エンティティ)は外部キーを複数持つ、と覚える。

出典:平成22年度 秋期 プロジェクトマネージャ試験 午前I 問11 / 独立行政法人情報処理推進機構(IPA)
※Web掲載用に表記を一部変更しています。図表はIPA公式問題冊子から引用しています。著作権はIPAに帰属します。
📱 演習アプリで解く(無料・登録不要・904問収録)

「データベース」分野の攻略ポイント

関係モデル・正規化・SQL・トランザクション管理・障害回復・データベース設計が中心です。計算問題は少なく、定義と手順を正確に覚えていれば確実に得点できる、いわば「取りこぼしてはいけない」分野です。特に正規形とACID特性は毎年のように形を変えて出ます。

データベースの攻略ポイントをすべて見る(要点5項目・ひっかけ3項目)→

同じ分野(データベース(関係モデル・正規化・SQL・トランザクション/排他制御・障害回復・NoSQL・データベース設計))の過去問