Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
раздел4.doc
Скачиваний:
3
Добавлен:
26.11.2018
Размер:
435.71 Кб
Скачать

Аномалии обновления (update)

Фамилии сотрудников, наименования проектов, номера телефонов повторяются во многих кортежах отношения. Поэтому если сотрудник меняет фамилию, или проект меняет наименование, или меняется номер телефона, то такие изменения необходимо одновременно выполнить во всех местах, где эта фамилия, наименование или номер телефона встречаются, иначе отношение станет некорректным (например, один и тот же проект в разных кортежах будет называться по-разному). Таким образом, обновление базы данных одним действием реализовать невозможно.

Причина аномалии - избыточность данных, порожденная тем, что в одном отношении хранится разнородная информация.

Аномалии удаления (delete)

При удалении некоторых данных может произойти потеря другой информации. Например, если закрыть проект "Космос" и удалить все строки, в которых он встречается, то будут потеряны все данные о сотруднике Петрове. Если удалить сотрудника Сидорову, то будет потеряна информация о том, что в отделе номер 2 находится телефон 33-22-11. Если по Н_ЗАДАН временно прекращены работы, то при удалении данных о работах по этому проекту будут удалены и данные о самом проекте (наименование проекта). При этом если был сотрудник, который работал только над этим проектом, то будут потеряны и данные об этом сотруднике.

Причина аномалии - хранение в одном отношении разнородной информации (и о сотрудниках, и о проектах, и о работах по проекту).

Для устранения указанных аномалий (а на самом деле для правильного проектирования модели данных!) применяется метод нормализации отношений. Нормализация основана на понятии функциональной зависимости атрибутов отношения.

4.1.2.Формирование исходного отношения. Функциональные зависимости (фз)

Проектирование БД начинается с определения всех объектов, сведения о которых будут включены в базу, и определения их атрибутов. Такое отношение называется исходным или универсальным отношением.

Процесс разбиения отношения с целью уменьшения вероятности появления аномалий называется декомпозицией. Для разбиения исходного отношения на ряд новых, называемых проекциями отношения, используются операции реляционной алгебры. Полная декомпозиция отношения – это совокупность произвольного числа его проекций, естественное соединение которых дает исходное отношение.

Рассмотрим пример формирования исходного отношения и выявим зависимости между атрибутами.

ПРЕПОДАВАТЕЛЬ

ФИО

Долж

Оклад

Стаж

Д_Стаж

Каф

Предм

Группа

ВидЗан

Иванов И.П.

препод

500

5

100

25

СУБД

256

Практ

Иванов И.П.

препод

500

5

100

25

VBA

123

Практ

Петров М.И.

Ст.препод

800

7

100

25

СУБД

256

Лекция

Петров М.И.

Ст.препод

800

7

100

25

ОС

256

Практ

Сидоров Н.Г

препод

500

10

150

25

VBA

123

Лекция

Сидоров Н.Г

препод

500

10

150

25

ОС

256

Лекция

Егоров В.Н.

препод

500

5

100

24

ПЭВМ

244

Лекция

В исходном отношении все атрибуты имеют атомарные (простые) значения.

Схема отношения ПРЕПОДАВАТЕЛЬ (ФИО, Долж, Оклад, Стаж, Д_Стаж, Каф, Предм, Группа, ВидЗан)

Явная избыточность: строки с ФИО повторяются несколько раз, изменение Долж у преподавателя надо проводить во всех строка.

Неявная избыточность: оклад у преподавателей, занимающих одинаковую должность и надбавки за одинаковый стаж одинаковые. При изменении оклада (редактировании) надо менять значение во всех строках.

Средством исключения избыточности является нормализация отношений.