Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
УД Главы 6-7.docx
Скачиваний:
11
Добавлен:
21.11.2019
Размер:
421.6 Кб
Скачать
    1. Общая схема проектирования баз данных методом декомпозиции

  1. Построение универсального отношения.

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

  3. Удаление всех избыточных функциональных зависимостей.

  4. Определяем, находится ли отношение в НФБК, если да - проектирование закончить, если нет – отношение разбивается на два.

  5. Шаги 4 и 5 повторяются для всех отношений, полученных в результате декомпозиции, до тех пор пока все отношения не будут находиться в НФБК.

    1. Построение отношений для базы данных “Начальник отдела”.

Возвратимся снова к примеру базы данных “Начальник отдела”.

Рис. 6.26 Универсально отношение R (Сном, Сфам, Тном, Лном, Проект, Квартал, Вклад)

Детерминанты не являющиеся возможными ключами:

Сном

Лном

Тном

Возможным ключом является Сфам, Проект, Квартал.

Универсальное отношенияе R (Сном, Сфам, Тном, Лном, Проект, Квартал, Вклад)

и не находится в НФБК и нуждается в декомпозиции.

Выявление функциональных зависимостей

В данном отношение содержаться следующие цепочки функциональных зависимостей:

Сном  Лном Тном

Сном  Тном  Лном

Сном, Проект, КварталВклад

Декомпозиция универсального отношения

На рисунках 6.3-6.5 изображены диаграммы функциональных зависимостей отношений, полученых из универсального отношения в процессе его декомпозиции.

Производим декомпозицию отношения R (Сном, Сфам, Тном, Лном, Проект, Квартал, Вклад) на

R 1 (Лном, Тном) и R2 (Сном, Сфам, Лном, Проект, Квартал, Вклад).

Возможные ключи: Лном, Тном

Детерминанты: Лном, Тном

Отнонение находится в НФБК

Рис. 6.27 Отношение R 1 (Лном, Тном)

Возможные ключи: Проект, Квартал, Вклад

Детерминанты: Проект, Квартал, Вклад

Сном

Отнонение не находится в НФБК

Рис. 6.28 Универсально отношение R2 (Сном, Сфам, Лном, Проект, Квартал, Вклад)

Произведем декомпозицию отношения R2 (Сном, Сфам, Лном, Проект, Квартал, Вклад) на

R3 (Сном, Сфам, Лном) и R4 (Сном, Проект, Квартал, Вклад).

В отношении R3 (Сном, Сфам, Лном) объединим зависимости Сном  Сфам и Сном  Лном в зависимость Сном  Сфам, Лном.

Возможные ключи: Сном

Детерминанты: Сном

Отнонение находится в НФБК

Рис. 6.29 Отношение R3 (Сном, Сфам, Лном).

Возможные ключи: Проект, Квартал, Вклад

Детерминанты: Проект, Квартал, Вклад

Отнонение находится в НФБК

Рис. 6.30 Отношение R4 (Сном, Проект, Квартал, Вклад).

Таким образом, в результате декомпозиции мы получили следующие отношения:

R2 (Лном, Тном) – находится в НФБК

R3 (Сном, Сфам, Лном) – находится в НФБК

R4 (Сном, Проект, Квартал, Вклад) – находится в НФБК

Таблицы 6.21- 6.23 демонстрируют отношения полученные в результате декомпозиции универсального отношения R.

Таблица 6.21 R2.

Таблица 6.22 R3.

Таблица 6.23 R4.

Лном

Тном

Сном

Сфам

Лном

Сном

Проект

Квартал

Вклад

25АП

5-17

289

Иванов

25АП

289

РКТ14

1990,3

3

4КТ

8-29

315

Николаев

4КТ

289

Зенит

1990,3

5

14ММ

4-85

429

Андреев

25АМ

289

ВКТ14

1990,4

2

559

Зайцев

14ММ

289

ВТА2

1990,4

4

315

ВКТ14

1990,3

6

315

ВТА8

1990,4

7

315

ВКТ14

1990,4

8

429

Зенит

1990,3

2

429

ОТР6

1990,4

7

429

ВКТ14

1990,4

4

559

ОВ77

1990,3

6

Присутствуют ли в этой БД аномалии вставки, удаления и обновления ?

Вставка. На работу в лабораторию 25АР приняли Сорокина, его номер 687. Эта информация помещается в отношение R2 <687,Сорокин, 25АР>. Если теперь сделать запрос составить список сотрудников, вклад которых хотя бы в один проект равен или меньше 2, мы получим ответ: Иванов, Андреев. Сорокина здесь нет таким образом аномалия вставки, присутствующая в исходном отношении, устроена в результате декомпозиции.

Обновление. В исходном отношении возникла проблема при изменении телефона у Иванова на 9-17 если мы сгенерируем запрос: напечатать телефон лаборатории 25АР, то получим ответ: 9-17

Аномалия обновления, исходного отношения устранена в результате декомпозиции.

Удаление. Финансирование проекта ОВ77 прекращено. Информация о проекте должна быть удалена из БД. В отношении R3 нужно удалить все записи со значением Проект=ОВ77

В исходном отношении это правило к удалению из базы информации о сотруднике 559 Зайцев. В нашем случае информация о сотрудниках храниться в R2 и не будет потеряна при удалении кортежей со значением Проект=ОВ77 из отношения R3 , таким образом, в результате декомпозиции устранена аномалия удаления. Цена за устранение аномалии – увеличение количества отношений. Теперь запросы к БД будут реализовываться более сложно, т.к. возможно понадобится прохождение цепочки из двух или трех отношений при поиске требуемых данных.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]