Программирование >>  Хронологические базы данных 

1 ... 127 128 129 [ 130 ] 131 132 133 ... 348


3. D -> AC

4. D -> E

Тогда строка 3 может быть заменена следующей строкой. 3. DAmDC

Затем с помощью строки 1 можно придать строке 2 такой вид.

2. А С

Но поскольку теперь D -> А и А С, по транзитивности это подразумевает D -> С, а в результате для строки 3 можно получить следующее выражение.

3. D -> А

Таким образом, первое множество функциональных зависимостей эквивалентно следующему неприводимому множеству.

А -> В А -> С D -> А D -> Е

Приведенное ниже второе множество функциональных зависимостей, очевидно, эквивалентно данному неприводимому множеству.

А -> ВС D -> АЕ

Таким образом, эти множества эквивалентны. 10.12.Прежде всего, следует переписать данное множество так, чтобы каждая функциональная зависимость имела одноэлементную правую часть.

1. АВ -> С

2. С -> А

3. ВС -> D

4. ACD -> В

5. BE -> С

6. СЕ -> А

7. СЕ -> F

8. CF В

9. CF -> D 10.D -> Е 11. D -> F

Тогда получаем следующее.

Строка 2 подразумевает строку 6, поэтому строку 6 можно опустить.

Строка 8 подразумевает функциональную зависимость CF -> ВС (по правилу дополнения), которая вместе со строкой 3 подразумевает функциональную зависимость CF -> D (по правилу транзитивности), так что строку 9 можно опустить.



Строка 8 подразумевает функциональную зависимость ACF -> АВ (по дополнению), а строка 11 - функциональную зависимость ACD -> АСЕ (по дополнению). Тогда можно записать, что ACD -> АВ (по правилу транзитивности) и ACD -> В (по правилу декомпозиции). Таким образом, строку 4 можно опустить.

На этом все операции вывода завершаются и множество становится неприводимым.

АВ -> С

С -> А

ВС -> D

BE -> С

СЕ -> F

CF -> В

D -> Е

D -> F

Вывод можно осуществить иначе.

Строка 2 подразумевает функциональную зависимость CD -> ACD (по правилу композиции), которая со строкой 4 подразумевает функциональную зависимость CD В (по правилу транзитивности), так что строку 4 можно заменить зависимостью CD -> В.

Строка 2 подразумевает строку 6, так что строку 6 можно опустить (как и прежде).

Строки 2 и 9 подразумевают функциональную зависимость CF -> AD (по правилу композиции), которая подразумевает функциональную зависимость CF -> ADC (по правилу дополнения), которая вместе со строкой 4 подразумевает функциональную зависимость CF -> В (по правилу транзитивности). Таким образом, строку 8 можно опустить.

На этом все операции вывода завершаются и множество становится неприводимым.

АВ -> С С А ВС -> D CD -> В BE -> С СЕ -> F CF -> D D -> Е D -> F

Обратите внимание, что тем самым получено два разных неприводимых покрытия для исходного множества функциональных зависимостей. 10.13.Потенциальными ключами являются L, DPC и DPT.

10.14. Используя сокращенную запись N, R, С, Т и Z для атрибутов NAME, STREET, CITY, STATE и ZIP соответственно, можно получить следующие функциональные зависимости.

N -> RCT RCT -> Z Z -> СТ 420 Часть III. Проектирование базы данных



Очевидно, что эквивалентным неприводимым множеством является следующее. N->R N->C N->T RCT->Z ZC Z->T Единственным потенциальным ключом является атрибут N.

10.15.Ответ к этому упражнению будет дан не полностью, хотя некоторые рассуждения здесь все же будут изложены. Во-первых, множество, очевидно, не является неприводимым, так как функциональные зависимости С -> J и CJ -> I совместно подразумевают зависимость С -> I. Во-вторых, очевидным суперключом является множество {A,B,C,D,G,J} (т.е. множество всех атрибутов, упомянутых в левых частях заданных функциональных зависимостей). Из этого множества можно исключить атрибут J, поскольку существует зависимость С -> J, а также исключить атрибут G, поскольку существует зависимость АВ -> G. Так как ни один из атрибутов А, В, С, D не находится в правой части любой заданной функциональной зависимости, множество {A,B,C,D} является потенциальным ключом.



1 ... 127 128 129 [ 130 ] 131 132 133 ... 348

© 2006 - 2024 pmbk.ru. Генерация страницы: 0
При копировании материалов приветствуются ссылки.
Яндекс.Метрика