Разложение без потерь соединения - PullRequest
5 голосов
/ 29 ноября 2010

Я учусь на тест, и это на листе учебного пособия.Это не домашняя работа, и она не будет оценена.

Схема отношений R = (A, B, C, D, E)

Функциональные зависимости = (AB-> E, C->AD, D-> B, E-> C)

Is r1 = (A, C, D) r2 = (B, C, E) ИЛИ

x1 = (A, C, D) x2 = (A, B, E) разложение объединения без потерь?а почему?

Ответы [ 3 ]

4 голосов
/ 29 ноября 2010

Моя реляционная алгебра ужасно ржавая, но вот как я ее запомнил:

Если r1 ∩ r2 -> r1 - r2 или r1 ∩ r2 -> r2 - r1 в FD, то у вас разложение без потерь.

r1 ∩ r2 = C
r1 - r2 = AD

C->AD находится в функциональных зависимостях => без потерь

для x1 и x2

x1 ∩ x2 = A
x1 - x2 = CD

A->CD не в FD s, теперь проверьте x2 - x1

x2 - x1 = BE

A->BE тоже не в FD с, поэтому с потерями

ссылки здесь , пожалуйста, проверьте, какие ужасные ошибки я мог совершить

0 голосов
/ 16 октября 2013

Функциональные зависимости = (AB-> E, C-> AD, D-> B, E-> C)

Is r1 = (A, C, D) r2 = (B, C,E) без потерь при выполнении алгоритма Чейза.Видно, что обе таблицы согласуются с «C», и зависимость C-> AD сохраняется в таблице ACD.

x1 = (A, C, D) x2 = (A, B, E)с потерями, как вы придете к выводу после выполнения алгоритма Чейза.С другой стороны, можно видеть, что обе таблицы согласуются только с A, и нет такой зависимости, которая полностью функционально зависит от A.

0 голосов
/ 22 апреля 2013

Вот мое понимание, в основном вы смотрите на свои разложения и определяете, являются ли общие атрибуты между отношениями ключом хотя бы к одному из отношений.

Так что с R1 и R2 - единственное, что между ними общее - это C. C будет ключом к R1, поскольку вам даны C -> A, D. Так что без потерь.

Для X1 и X2 единственной общей чертой является A, который сам по себе не является ключом для X1 или X2 из предоставленных вам функциональных зависимостей.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...