第7問
RDB の設計においては、利用するマスタファイルやトランザクションファイル のテーブル定義が行われる。 ある業務で利用しているRDB では、以下のようなマスタテーブルやトランザク ションテーブルが定義されている。各テーブルが正規化されている場合、以下の空 欄A〜C に入る項目の組み合わせとして、最も適切なものを下記の解答群から選 べ。 受注トランザクション 項目 C 商品コード 顧客コード 項目 ... ... B 商品コード 仕入先マスタ 項目 項目 項目 項目 項目 A 顧客コード 商品マスタ 項目 項目 顧客マスタ ... ... V解答群X
- ア A:顧客住所 B:仕入先コード C:受注日付
- イ A:顧客電話番号 B:仕入先住所 C:販売金額
- ウ A:顧客電話番号 B:在庫量 C:値引率
- エ A:自社担当者名 B:仕入単価 C:仕入先住所 DKJC-1F
▼ 解答・解説を見る
正解:ア
解答:ア
〔正規化されたテーブルへの項目配置〕各項目はその主キーに完全従属する場所に置く。
-
A(顧客マスタ:主キー=顧客コード):顧客コードで一意に決まる属性 → 顧客住所。
-
B(商品マスタ:主キー=商品コード。仕入先マスタと関連):商品から仕入先を参照するための外部キー → 仕入先コード。
-
C(受注トランザクション:顧客コード・商品コードを持つ):受注ごとに発生する取引属性 → 受注日付。
-
ア(○):A顧客住所(顧客に従属)/B仕入先コード(商品マスタが仕入先を参照)/C受注日付(トランザクション固有)で正規化形に合致。
-
イ(×):B「仕入先住所」は仕入先マスタに置くべき属性で商品マスタに置くと冗長。
-
ウ(×):B「在庫量」、C「値引率」が各テーブルの構成上不適。
-
エ(×):A「自社担当者名」は顧客コードに従属せず不適。B「仕入単価」も配置が不適。
よって ア。