データベース設計 (全64問中8問目)

No.8

UMLを用いて表した図のデータモデルから,"部品"表,"納入"表及び"メーカー"表を関係データベース上に定義するときの解釈のうち,適切なものはどれか。
27.gif/image-size:317×81
  • 同一の部品を同一のメーカーから複数回納入することは許されない。
  • "納入"表に外部キーは必要ない。
  • 部品番号とメーカ番号の組みを"納入"表の候補キーの一部にできる。
  • "メーカー"表は,外部キーとして部品番号をもつことになる。

分類

テクノロジ系 » データベース » データベース設計

正解

解説

UMLのクラス図ではクラス同士の多重度を以下の表記で表します。
27_1.gif/image-size:197×127
1対多で関連付けられるクラス同士を関係データベースとして実装すると、"1"側に主キーが含まれ、"多"側に外部キーが含まれる関係になります。これを踏まえて図のデータモデルを関係データベースとして定義すると次のようになります。
27_2.gif/image-size:383×139
  • "納入"表には、部品番号とメーカ番号が同じで納入日が異なるレコードを追加できるので、同一の部品を同一のメーカーから複数回納入することが許されていると解釈できます。
  • "納入"表には少なくとも"部品番号"と"メーカ番号"の2つの外部キーが含まれます。
  • 正しい。"納入"表の主キーとしては以下の2つのパターンが考えられます。
    • 納入番号のように重複のない連番の属性(サロゲートキー)を用意して、主キーとする
    • 納入日、部品番号、メーカ番号の複合主キーにする
    複合主キーを採用した場合には、部品番号とメーカ番号を候補キーの一部として使うことになります。候補キーとは、ある表の1つのレコードを一意に決定できる属性、または属性の組合せで極小のものです。
  • "部品"クラスと"メーカー"クラスは、"納入"クラスを介した多対多の関係になります。クラス間に直接の関連はありませんので、"メーカー"表が外部キーとして部品番号を持つことはありません。
© 2010-2024 応用情報技術者試験ドットコム All Rights Reserved.

Pagetop