平成24年 春期 データベーススペシャリスト 午前II 問3

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

 ア  組立品(親品目番号, 品目名)
 部品(子品目番号, 品目名)
 部品数(親品目番号, 子品目番号, 数)
 イ  品目(親品目番号, 品目名, 型区分)
 部品数(子品目番号, 数)
 ウ  品目(品目番号, 品目名, 型区分)
 組立品(組立品番号, 品目番号, 品目名)
 部品数(部品番号, 組立品目番号, 数)
 エ  品目(品目番号, 品目名, 型区分)
 部品数(親品目番号, 子品目番号, 数)


答え エ


解説
問題のクラス図には、クラスとして“品目”、“部品数”、“組立品”、“部品”の4つがありますが、このうち“組立品”と“部品”は“品目”の派生クラスで、追加される属性が書かれていないので、関係スキーマ定義を作成する必要はありません。
“品目”クラスは、属性として「品目番号」と「品目名」があり、さらに、“組立品”と“部品”からの汎化の情報として「型区分」があるので、関係スキーマ定義は品目番号を主キーとして『品目(品目番号, 品目名, 型区分)』になります。
“部品数”クラスは、属性として「数」があり、さらに“部品数”クラスは“品目”クラスと“組立品”クラスの関連クラスで、“部品数”クラスから見て“品目”クラスは『子品目』であり、“組立品”クラスは『親品目』なので、関係スキーマ定義は親品目、子品目のそれぞれを特定する外部キーとして品目番号を使い『部品数(親品目番号, 子品目番号, 数)』になります。


キーワード
・スキーマ

キーワードの解説
  • スキーマ(schema)
    データベースのスキーマとは、データの構造や性質を定義したもののことです。
    ANSI/SPARCの3層スキーマでは、外部スキーマ、概念スキーマ、内部スキーマのに分けられます。

もっと、「スキーマ」について調べてみよう。

戻る 一覧へ 次へ