2013-03-06 2 views
0

EXAM ревизия, а не домашнее задание.Является ли мое приложение Boyce-Codd NF правильным в этом упражнении?

Я работаю на этом упражнении, и я хотел бы, чтобы проверить мое решение в порядке:

Учитывая следующее соотношение, R и множество функциональных зависимостей, F: R = {A, B, C , D, E, F, G, H, I} F = {{C, D} -> {A}, {G} -> {E}, {C, D, E} -> {G , B, H}, {B} -> {F}, {H} -> {I}} разложить R на отношения, которые удовлетворяют нормальной форме Бойса-Кодда.

Мой ответ: BOLD является первичным ключом

(C, D, A)

(C, D, Е, В, Н)

(Б, F)

(Н, я)

(G, С , D)

(E, G)

ответ

0

Я думаю, что первые четыре вы получены все в 5NF.

  • {G CD}
  • {Е.Г.}

Но эти два не выглядят хорошо.

Во-первых, одним из ваших FD является G-> E.В связи, который содержит только G и E, как вы определили, что право разложения

  • {Е.Г.}

вместо

  • {G E}

, учитывая, что FD G-> E все еще должен h старый?

С первого взгляда, я не вижу, как вы можете получить G-> CD из предоставленных вами FD.

+0

Согласно этой странице: http://en.wikipedia.org/wiki/Boyce%E2%80%93Codd_normal_form 'Достижимость BCNF' Я пытался захватить: {AB → C, C → B}. Я хорошо и действительно смутил себя этим. –

+0

Спасибо за участие @Mike Я попробую еще раз, одно из правил, которое у меня есть, это если '{X-> Y}' нарушает BCNF, разложите 'R' (все атрибуты) на' {RY} 'и '{XY}'. Поэтому я сделал «R = {C, D, E, G} - {E} = {C, D, G}', а мой 'X' -' {G} ', а мой' Y' - '{E}' ' поэтому я получаю '{G, E}'. Но в моем первоначальном вопросе я не показывал правильные составные первичные ключи, поэтому они должны были быть '{*** C ***, *** D ***, *** G ***}' и '{ *** G ***, *** E ***} '. Я действительно надеюсь, что мне удастся справиться с этим, или я в беде :) [не может смело комментировать] –

+0

Где вы узнали это правило? –

 Смежные вопросы

  • Нет связанных вопросов^_^