Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Шпоры_БД.doc
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
2.03 Mб
Скачать
    1. Аномалии обновления

Из таблицы 1 видно, что данные отношения СОТРУДНИКИ_ОТДЕЛЫ_ПРОЕКТЫ хранятся в ней с большой избыточностью. Во многих строках повторяются фамилии сотрудников, номера телефонов, наименования проектов. Кроме того, в данном отношении хранятся вместе независимые друг от друга данные – и данные о сотрудниках, и об отделах, и о проектах, и о работах по проектам. Пока никаких действий с отношением не производится, это не страшно. Но как только состояние предметной области изменяется, то, при попытках соответствующим образом изменить состояние базы данных, возникает большое количество проблем.

Исторически эти проблемы получили название аномалии обновления.

Под аномалией обновления будем понимать неадекватность модели данных предметной области либо некоторые дополнительные трудности в реализации ограничений предметной области средствами СУБД.

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

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

  • аномалии вставки (INSERT),

  • аномалии обновления (UPDATE),

  • аномалии удаления (DELETE).

В отношении СОТРУДНИКИ_ОТДЕЛЫ_ПРОЕКТЫ можно привести примеры всех видов аномалий.

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

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

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

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

Нормализация производится в несколько этапов. На начальном этапе схема отношений должна находиться в первой нормальной форме (1НФ).

  1. Первая Нормальная Форма

Первая нормальная форма (1НФ) – это обычное отношение. Свойства отношений (это и будут свойства 1НФ):

  • В отношении нет одинаковых кортежей.

  • Кортежи не упорядочены.

  • Атрибуты не упорядочены и различаются по наименованию.

  • Все значения атрибутов атомарны.

Для отношения СОТРУДНИКИ_ОТДЕЛЫ_ПРОЕКТЫ все эти условия выполнены, поэтому оно находится в 1НФ.

Пример таблицы ЭКЗАМЕНАЦИОННАЯ ВЕДОМОСТЬ, которую нельзя считать отношением в 1НФ (т.к. на пересечении строки и четвертого столбца располагается не одно значение, а несколько).

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

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

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

Прежде чем перейти к построению второй нормальной формы, необходимо определить ряд формальных понятий.

  1. РЕЛЯЦИОННАЯ МОДЕЛЬ ДАННЫХ: ФУНКЦИОНАЛЬНЫЕ ЗАВИСИМОСТИ, ВТОРАЯ НОРМАЛЬНАЯ ФОРМА.

Отношение СОТРУДНИКИ_ОТДЕЛЫ_ПРОЕКТЫ находится в 1НФ, при этом, как было показано выше, логическая модель данных не адекватна модели предметной области. Таким образом, первой нормальной формы недостаточно для правильного моделирования данных.

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