IPA公式正解:ア A 表と B 表の対応関係が 1 対 1 の場合,列 a を B 表に追加して外部キーとしてもよいし,列 b を A 表に追加して外部キーとしてもよい。
※ 正解はIPA公表の解答です。解説は当サイトが生成AIを用いて作成しています。誤りにお気づきの場合はお問い合わせください。
【解説】正解は選択肢【ア】です。1対1の対応関係では、どちらか一方の表に相手の主キーを外部キーとして追加することで整合性を保ちながら関連付けを実装できます。どちら側に追加しても1対1の多重度を表現可能です。
【詳細解説】■ 本問の核心・解法のポイント
二つのエンティティ(表)間の対応関係(多重度・カーディナリティ)に応じた関係モデルへのマッピング規則を正しく理解しているかが問われています。
1. 1対1の場合:どちらか一方の表に相手の主キーを外部キーとして追加します(必須性やアクセスの頻度によって決定します)。
2. 1対多の場合:「多」側の表に「1」側の主キーを外部キーとして追加します。
3. 多対多の場合:直接外部キーを設定することはできないため、関連を表す新しい表(連関表・交差表)を作成し、両方の主キーを外部キー(かつ複合主キーなど)として保持します。
・各選択肢の徹底解説:
・【選択肢ア★】:適切です。1対1の関係では、A表に列bを追加しても、B表に列aを追加しても対応関係を表現できます。
・イ:不適切です。A対Bが1対多の場合、「多」側であるB表に「1」側の主キーである列aを外部キーとして追加する必要があります。
・ウ:不適切です。多対多の関係を解消するために新しい表を作成する場合、その表には列aと列bの「両方」を外部キーとして持たせる必要があります。
・エ:不適切です。多対多の関係では、互いの表に外部キーを追加するだけでは多重の値を保持できず第1正規形に反するか、冗長な行が発生するため、連関表を新設する必要があります。
よって正解はアです。