関係:人名録(氏名,社名,役職)を射影によって分解して,関係:A(氏名,社名),関係:B(氏名,役職),関係:C(社名,役職)を作った。これら三つの関係から元の関係”人名録”を復元するための方法はどれか。ここで下線の付いた項目は主キーである。
ア A とB とC との直積を作る。
イ A とB との集合和を求める。
ウ A とB とを氏名で等値結合する。
エ A とC とを社名で等値結合する。
オ B とC とを役職で自然結合する。
正解:エ
元の関係AとB、AとCのどちらに分解しても 自然結合により元の関係"人名録"を再現できるので 損失なしの分解という点ではどちらも正しいといえるが、 次のような問題がある。ア.元の関係をAとBに分解した場合(不適切な分解)
社名→役職の関数従属性が関係間の制約となっているため、
ある人が特定の社名、役職を持たないと、
特定の社名と役職との関係を挿入できない。
あるいは複数の人が同じ社名を持っている場合は、
その人たちが同じ役職を持つように監視しなければならないという
問題がある。この分解は不適切な分解といわれる。イ.元の関係をAとCに分解した場合(適切な分解)
社名→役職の関係従属性が関係Cの中に含まれ、あらかじめ
特定の社名と役職の関係を挿入でき、上のような問題は生じない。
この分解は適切な分解と呼ばれる。
関連記事
iTAC > テクニカルエンジニア(データベース) > 2004.01.01-2004.04.03までのログ > 理解不能です
http://www.mirai.ne.jp/~suehiro/am/h0804/db-h8.htm
http://school4.2ch.net/test/read.cgi/lic/1108469078/331-