過去問解きまくり研究所 ホーム

平成28年度 春期 午前Ⅱ 問5

データベース設計

主キーに関する問題

関係データベースの表を設計する過程で,A表とB表が抽出された。主キーはそれぞれ列aと列bである。この二つの表の対応関係を実装する表の設計に関する記述のうち,適切なものはどれか。

表の構成(原典は図。各表の先頭の列だけに名前と下線がある。原典の実線の下線は …、破線の下線は〔破線の下線〕で表した):

A(a,…)

B(b,…)

答えと解説を見る

✓ これが正解アA表とB表の対応関係が1対1の場合,列aをB表に追加して外部キーとしてもよいし,列bをA表に追加して外部キーとしてもよい。

解説

1対1なら、どちらの主キーを相手側の外部キーにしてもかまいません。

二つの表の対応関係を外部キーで実装するときは、相手を一つに決められる側の行に、相手の主キーを持たせます。1対1の場合、A表の1行に対応するB表の行は一つ、B表の1行に対応するA表の行も一つなので、どちら向きに持たせても各行に入る値は一つで済みます。そのため列aをB表に加えても、列bをA表に加えても実装できます。1対多では多の側に、多対多では両方の主キーを持つ新しい表を作るのが基本です。外部キーを置いた側の1行に値が一つだけ入るかどうか、で配置を判断すると覚えておくと迷いません。

ほかの選択肢はなぜ違うのか

この問題の用語

出典:平成28年度 春期 データベーススペシャリスト試験 午前Ⅱ 問5

同じ用語が出る問題

この解説に誤りを見つけたら教えてください。直して、直した記録を残します。誤りを報告する(メールが開きます)