Основы современных компьютерных технологий


Избыточное дублирование данных и аномалии - часть 2


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

Возможный способ выхода из данной ситуации приведен на рис. 19.6. Здесь показаны два отношения С_Н и Н_Т, полученные путем декомпозиции исходного отношения С_Т_Н. Первое из них содержит информацию о номерах комнат, в которых располагаются сотрудники, а второе - информацию о номерах телефонов в каждой из комнат. Теперь, если Петрова и уволят из учреждения и, как следствие этого, удалят всякую информацию о нем из баз данных учреждения, то это не приведет к утере информации о номере телефона в 111-й комнате.

Процедура декомпозиции отношения С_Т_Н на два отношения С_П и Н_Т является основной процедурой нормализации отношений.

С_Н

Служащий Н_комн
Иванов 109
Петров 111
Сидоров 111
Егоров 111

Н_Т

Н_комн Телефон
109 3721
111 4328

Рис. 19.6. Исключение избыточного дублирования

Избыточное дублирование данных создает проблемы при обработке кортежей отношения, названные Э. Коддом аномалиями обновления отношения. Он показал, что для некоторых отношений проблемы возникают при попытке удаления, добавления или редактировании их кортежей. Проблемы удаления и добавления кортежей, в принципе, снимаются в современных СУБД (например, Visual FoxPro) с появлением в них значений для полей таблиц типа Null - неопределенных значений. Поэтому далее рассмотрим только проблемы редактирования кортежей отношений.

236




Начало  Назад  Вперед