Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Ивт-20 / БД - заочный факультет / 04 Методические указания - проектирование баз данных.doc
Скачиваний:
43
Добавлен:
26.04.2015
Размер:
518.66 Кб
Скачать

Раздел 1. Нормализация отношений. Практическая работа №1. Функциональные зависимости.

Основная цель проектирования реляционной БД заключается в группировании атрибутов в отношения так, чтобы минимизировать избыточность данных и таким образом сократить объем памяти, необходимый для физического хранения отношений, представленных в виде таблиц. При работе с отношениями, содержащими избыточные данные, могут возникать проблемы, которые называются аномалиями обновления.

Прежде всего необходимо познакомиться с понятием ФЗ.

Функциональная Зависимость (ФЗ) описывает связь между атрибутами отношения. Если в отношении атрибут В функционально зависит от атрибута А, то каждое значение атрибута А связано только с одним значением атрибута В.

ФЗ позволяют накладывать дополнительные ограничения на реляционную схему. Формально можно определить следующим образом: если А и В – атрибуты в таблице R, то запись

ФЗ: А -> В

Обозначает, что если два кортежа в таблице R имеют одно и то же значение атрибута А, то они имеют одно и то же значение атрибута В.

Атрибут в левой части ФЗ называется детерминантом, так как его значение определяет значение атрибута в правой части. Ключ таблицы является детерминантом, так как его значение однозначно определяет значение каждого атрибута таблицы.

ЗАДАЧА 1

Рассмотрите следующую реляционную таблицу. Заглавные буквы обозначают имена атрибутов, строчные буквы и цифры – значения атрибутов.

Отношение Х

А

В

С

Д

Е

а1

в2

с1

д3

е2

а3

в2

с3

д2

е4

а1

в3

с1

д1

е2

а2

в4

с1

д4

е2

Обведите в кружок те функциональные зависимости, которые кажутся Вам выполненными для X.

а) А  С b) Д  Е с) С  А d) Е  В

e) Е  А f) С  В g) В  Д h) В  А

Определите возможный ключ отношения Х.

Решение (вариант е):

Значением атрибута Е в первом, третьем и четвертом кортежах является е2. Соответствующие им значения атрибута Аа1, а1, а2. Следовательно, атрибут А функционально не зависит от атрибута Е. Ключом является атрибут, который однозначно определяет любой кортеж в таблице. В примере в качестве ключа может быть только атрибут Д.

ЗАДАЧА 2

Рассмотрите следующую реляционную таблицу. Заглавные буквы обозначают имена атрибутов, строчные буквы и цифры – значения атрибутов.

Отношение Y

А

В

С

Д

Е

а1

в2

с1

д3

е2

а2

в2

с3

д3

е4

а1

в3

с2

д1

е2

а2

в4

с5

д4

е5

Обведите в кружок те функциональные зависимости, которые не выполнены для Y.

а) А  С b) Д  Е с) С  А d) Е  В

e) Е  А f) С  В g) В  Д h) В  А

Определите возможный ключ отношения Y.

ЗАДАЧА 3

Рассмотрите следующую реляционную таблицу. Заглавные буквы обозначают имена атрибутов, строчные буквы и цифры – значения атрибутов.

Отношение Z

А

В

С

Д

Е

а1

в2

с2

д3

е2

а1

в2

с2

д1

е4

а2

в3

с2

д1

е2

а2

в4

с5

д1

е5

Обведите в кружок те функциональные зависимости, которые не выполнены для Z.

а) Е  Д b) Д  Е с) С  А d) Е  В

e) Е  А f) В  С g) В  Д h) В  А

Определите возможный ключ отношения Z.