平成22年度 高度共通 午前I(PM試験) 問11
顧客は一般に複数の銀行に預金するものとして,顧客と銀行の関連を,E-R図で次のように表現する。このモデルを関係データベース上に"銀行"表,"口座"表,"顧客"表として実装する場合の記述として,適切なものはどれか。

- ア "銀行"表から"口座"表へのカーディナリティは多対1である。
- イ "銀行"表中に参照制約を課した外部キーがある。
- ウ "口座"表から"顧客"表へのカーディナリティは1対多である。
- エ "口座"表には二つ以上の外部キーがある。
解答・解説を見る
正解:エ
AI解説
E-R図では銀行と口座が1対多、顧客と口座が1対多であり、口座は銀行と顧客の両方に従属する「多」側のエンティティである。多側の表は、参照する1側の表の主キーを外部キーとして持つため、口座表には銀行を参照する外部キーと顧客を参照する外部キーの2つ以上の外部キーが存在する。 ア: 誤り。1つの銀行には多数の口座があるため、銀行表から口座表へのカーディナリティは1対多である。 イ: 誤り。銀行表は参照される「1」側であり、外部キーを持つのは参照する側の口座表である。銀行表に外部キーは不要である。 ウ: 誤り。複数の口座が1人の顧客に対応するため、口座表から顧客表へは多対1である。 エ: 正しい。口座表は銀行表を参照する外部キー(銀行コードなど)と顧客表を参照する外部キー(顧客番号など)の2つ以上の外部キーを持つ。 💡 「外部キーは多側の表に置く」が関係データベース実装の大原則である。多対多の関連や複数の1対多が集まるエンティティ(連関エンティティ)は外部キーを複数持つ、と覚える。
出典:平成22年度 秋期 プロジェクトマネージャ試験 午前I 問11 / 独立行政法人情報処理推進機構(IPA)
※Web掲載用に表記を一部変更しています。図表はIPA公式問題冊子から引用しています。著作権はIPAに帰属します。
※Web掲載用に表記を一部変更しています。図表はIPA公式問題冊子から引用しています。著作権はIPAに帰属します。