H28年春期午前問27について
広告
T.S.さん
(No.1)
正規化する関係によると、属性aは属性b、c、dを決められることになるのですが、
なぜ正解はa、b、dに括られるのでしょうか?
なぜ正解はa、b、dに括られるのでしょうか?
2018.01.30 00:33
今さら聞けないさん
(No.2)
正解はエの |abd| |bc| |bde| ですが、
例えば、アの |abcd| |bde| で終わらせてしまうと、第2正規化(または第1正規化)までだからだと思います。
・第2正規化 主キーで関数従属しているものは、別表に移されている
・第3正規化 主キー以外でも関数従属しているものは、別表に移されている
問題には主キーなどの定義はないですが、結局、第3正規化までされると一意に決まる(関数従属している)ものはすべて別表に移されていることになります。
|bc|まで別表にして第3正規化の完成ということだと思います。
例えば、アの |abcd| |bde| で終わらせてしまうと、第2正規化(または第1正規化)までだからだと思います。
・第2正規化 主キーで関数従属しているものは、別表に移されている
・第3正規化 主キー以外でも関数従属しているものは、別表に移されている
問題には主キーなどの定義はないですが、結局、第3正規化までされると一意に決まる(関数従属している)ものはすべて別表に移されていることになります。
|bc|まで別表にして第3正規化の完成ということだと思います。
2018.01.30 22:51
ぽちさん
(No.3)
今さら聞けないさんのご解説どおりだと思います。
自分は以下のように考えました。
問の[正規化する関係]の矢印から
{主キー}→{非キー}の関係(1)~(3)が得られます。
(1) {a}→{b,c,d}
(2) {b}→{c}
(3) {b,d}→{e}
(1)と(2)より
(1)は非キー間にb→cの従属関係があるので、
第3正規形の条件を満たしません。
そこで(1)を
(1)' {a}→{b,d} と
(2)に分解して
非キー間の従属関係を取り除いたものと
(3)が残り、|abd| |bc| |bde| が正解と考えました。
自分は以下のように考えました。
問の[正規化する関係]の矢印から
{主キー}→{非キー}の関係(1)~(3)が得られます。
(1) {a}→{b,c,d}
(2) {b}→{c}
(3) {b,d}→{e}
(1)と(2)より
(1)は非キー間にb→cの従属関係があるので、
第3正規形の条件を満たしません。
そこで(1)を
(1)' {a}→{b,d} と
(2)に分解して
非キー間の従属関係を取り除いたものと
(3)が残り、|abd| |bc| |bde| が正解と考えました。
2018.01.30 23:42
ぼちさん
(No.4)
すみません。
私はまだ正規化をきちんと
理解していないようです。
私の投稿は忘れて下さい。
出直します。
私はまだ正規化をきちんと
理解していないようです。
私の投稿は忘れて下さい。
出直します。
2018.01.31 01:42
返信投稿用フォーム
スパム防止のためにスレッド作成日から30日経過したスレッドへの書込みはできません。