Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
УДьт.doc
Скачиваний:
60
Добавлен:
27.03.2015
Размер:
1.08 Mб
Скачать

7..Проблемы, связанные с использованием единственного отношения

На первый взгляд, полученное универсальное отношение можно использовать в качестве единственного отношения проектируемой БД. Существует несколько причин, по которым не следует данное отношение использовать в качестве единственного. Различают три проблемы, связанные с использованием отношений и с выполнением определенных операций.

  • проблема вставки;

  • проблема обновления;

  • проблема удаления.

Проблема вставки.

Если в отделе появляется новый сотрудник, то информацию о нем необходимо внести в БД. При этом значение атрибутов Проект, Квартал будут пустыми, а Вклад фактически равен нулю.

684

Сорокин

5-17

25AP

-

-

0

Как отмечалось ранее, пустых значений следует всячески избегать. Предположим, что в отношение включена новая запись о сотруднике Сорокине с пустыми полями и делается следующий запрос: “Напечатать список номеров и фамилий сотрудников, вклад которых не более 2”. В результате мы получим так называемый «черный список», в который попал и только что принятый на работу Сорокин.

289

Иванов

429

Андреев

687

Сорокин

В данном случае на простой вопрос мы получаем неверный ответ. Следовательно в нашей базе данных есть аномалии.

Проблема обновления.

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

Явная избыточность: фамилия сотрудника, телефон лаборатории, номер лаборатории могут появляться в отношении многократно. Если какой-либо сотрудник, на пример Иванов, перейдет на работу в другую лабораторию, соответствующие изменения необходимо сделать во всех записях, где хранится информация о данном сотруднике.

Неявная избыточность это (для нашего примера) когда один номер телефона имеют несколько сотрудников лаборатории. Например, номер 5-17 появляется в записях с фамилиями Иванов и Андреев.

Предположим возникает следующая ситуация: Начальник отдела встречает Иванова и спрашивает его – “Вы были вчера на вашем рабочем месте? Я весь день вам звонил и никто не брал трубку”. А Иванов ему отвечает “Отдел связи сменил вчера номер на 9-17”. Начальник отдела приходит к себе в кабинет и меняет во всех записях телефон Иванова на 9-17. Через некоторое время ему необходимо позвонить в лабораторию 25-AP, а телефон он не помнит, он составляет запрос вывести все не повторяющиеся записи со значением поля Лном равным 25-AP.

Ответ: 9-17 и 5-17. По какому телефону звонить если заранее известно, что в каждой лаборатории только один телефон.

Проблема удаления.

Предположим, что финансирование проекта 0В77 прекратилось и начальник удаляет все соответствующие записи. Так как в рассматриваемом отношении имеется только один кортеж с номером сотрудника 559 (это сотрудник Зайцев), который выполнял работу только по проекту 0В77, то произойдет удаление записи о сотруднике Зайцеве. Фактически мы теряем всю информацию о данном сотруднике. Рассмотренная проблема также является аномалией.

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

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