ВУЗ:
Составители:
Рубрика:
– 50 –
туиции и опыта разработчика, однако некоторые его моменты можно формали-
зовать.
Одной из таких формализаций является требование, согласно которому ре-
ляционная база данных должна быть нормализована. Окончательная цель нор-
мализации сводится к получению такого проекта базы данных, в котором каж-
дый факт появляется лишь в одном месте, т. е
. исключена избыточность ин-
формации. Избыточность информации устраняется не только с целью экономии
памяти, сколько для исключения возможной противоречивости хранимых дан-
ных и упрощения управления ими. Обычно различают следующие проблемы,
возникающие при использовании ненормализованных таблиц:
– избыточность данных проявляется в том, что в нескольких записях таб-
лицы базы данных повторяется одна и та же информация. Например, один человек
может работать на двух и более должностях. Но если информация о личных дан-
ных сотрудника и его должности совмещены, то для сотрудника, занимающего
более одной должности, его личные данные будут
дублироваться;
– аномалия обновления тесно связана с избыточностью данных. Предпо-
ложим, что у сотрудника, работающего на нескольких должностях, изменился ад-
рес. Чтобы информация, содержащаяся в таблице, была корректной, необходимо
будет внести изменения в несколько записей. В противном случае возникает несо-
ответствие информации, которое и называется аномалией обновления;
– аномалияудаления возникает при удалении записей из ненормализован-
ной таблицы. Пусть в организации некоторые должности аннулируются. При этом
следует удалить соответствующие записи в рассматриваемой таблице. Однако
удаление приводит к потере информации о сотруднике, занимавшем эту долж-
ность. Такая потеря и называется аномалией удаления.
2.4.1. П
ОНЯТИЕ ФУНКЦИОНАЛЬНОЙ ЗАВИСИМОСТИ
Для устранения перечисленных аномалий необходима декомпозиция схемы
базы данных, гарантирующая отсутствие потерь и сохраняющая зависимости.
Сохранение зависимостей подразумевает выполнение исходного множества
функциональных зависимостей на отношениях новой схемы.
Термин функциональная зависимость означает следующее: атрибут
B от-
ношения
R функционально зависит от атрибута A того же отношения, если в
каждый момент времени каждому значению атрибута
A соответствует не более
чем одно значение атрибута
B, связанного с A в отношении R.
Утверждение, что
B функционально зависит от A, означает то же самое, что
A однозначно определяет B, т. е. если в какой-то момент времени известно зна-
чение
A, то можно получить и значение B.
Атрибут может функционально зависеть не от какого-то одного атрибута, а
от целой группы атрибутов. Атрибут (или набор атрибутов)
B из отношения R
называется полностью зависимым от другого набора атрибутов
A отношения R,
если
B функционально зависит от всего множества A, но не зависит ни от како-
го подмножества
A. Например, если
k21
A,...,A,AA
и BA,A
21
, то функ-
циональная зависимость неполная.
Страницы
- « первая
- ‹ предыдущая
- …
- 48
- 49
- 50
- 51
- 52
- …
- следующая ›
- последняя »
