平成24年春期試験問題 午前Ⅱ 問3

次の概念データモデルを関係データベース上に実装するとき,適切な関係スキーマ定義はどれか。ここで,モデルの表記にはUMLを用いる。関係スキーマ定義中の実線の下線は主キーを,破線の下線は外部キーを表す。
03.png

  • 組立品(親品目番号,品目名)
    部品(子品目番号,品目名)
    部品数(親品目番号子品目番号,数)
  • 品目(親品目番号,品目名,型区分)
    部品数(子品目番号,数)
  • 品目(品目番号,品目名,型区分)
    組立品(組立品番号品目番号,品目名)
    部品(部品番号品目番号,品目名)
    部品数(部品番号組立品番号,数)
  • 品目(品目番号,品目名,型区分)
    部品数(親品目番号子品目番号,数)
正解 問題へ
分野:テクノロジ系
中分類:データベース
小分類:データベース設計
解説
このクラス図は組織図やコンピュータのディレクトリ構造などの再帰的な階層構造を表すための常套モデルでCompositeパターンと呼ばれます。

図には"品目","組立品","部品","部品数"という4つのクラスがあります。このうち"組立品"クラスと"部品"は"品目"として汎化され、サブクラスである組立品と部品は独自の属性をもちません。汎化の矢印の近くにある「型区分」は汎化セット名と呼ばれ、サブクラスの型を分類する軸となるものです。このため"品目"クラスは、"品目番号"(品目ごと一意なので主キー)、"品目名"、サブタイプを識別するための"型区分"の3つの属性をもたせることになります。
また"部品数"は関連クラスであり親品目と子品目の関連ごとに情報が存在します。したがって属性"数"を一意に特定するためには、関連する親品目の品目番号(親品目番号)と子品目の品目番号(子品目番号)の組合せを主キー兼外部キーする必要があります。

これらをまとめると次の表定義になります。
 品目(品目番号,品目名,型区分)
 部品数(親品目番号子品目番号,数)

Pagetop