Материал предоставлен https://it.rfei.ru

Формирование исходного отношения

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

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

  • ФИО - фамилия и инициалы преподавателя. Исключаем возможность совпадения фамилии и инициалов у преподавателей.
  • Должн - должность, занимаемая преподавателем. Оклад - оклад преподавателя.
  • Стаж - преподавательский стаж.
  • Д_Стаж - надбавка за стаж.
  • Каф - номер кафедры, на которой числится преподаватель.
  • Предм - название предмета (дисциплины), читаемого преподавателем. Группа - номер группы, в которой преподаватель проводит занятия.
  • ВидЗан - вид занятий, проводимых преподавателем в учебной группе.

Одно из требований к отношениям заключается в том, чтобы все атрибуты отношения имели атомарные (простые) значения. В исходном отношении каждый атрибут кортежа также должен быть простым. Пример исходного отношения ПРЕПОДАВАТЕЛЬ приведен  в таблице.

ФИО Должн Оклад Стаж Д_Стаж Каф Предм ГруппаВидЗан
Иванов И.М. преп 500 5 100 25СУБД 256Практ
Иванов И.М. преп 5005 100 25 ПЛ/1123 Практ
Петров М.И. ст.преп 800 7 100 25СУБД 256 Лекция
Петров М.И. ст. преп 800 7 100 25 Паскаль 256Практ
Сидоров Н.Г. преп 500 10 150 25ПЛ/1 123Лекция
Сидоров Н.Г. преп 500 10 150 25 Паскаль 256Лекция
Егоров В.В.преп 500 5 100 24ПЭВМ 244 Лекция

Исходное отношение ПРЕПОДАВАТЕЛЬ

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

Исходное отношение ПРЕПОДАВАТЕЛЬ содержит избыточное дублирование данных, которое и является причиной аномалий редактирования. Различают избыточность явную и неявную.

Явная избыточность заключается в том, что в отношении ПРЕПОДАВАТЕЛЬ строки с данными о преподавателях, проводящих занятия в нескольких группах, повторяются соответствующее число раз. Например, в отношении ПРЕПОДАВАТЕЛЬ все данные по Иванову повторяются дважды. Поэтому, если Иванов И.М. станет старшим преподавателем, то этот факт должен быть отражен в обеих строках. В противном случае будет иметь место противоречие в данных, что является примером аномалии редактирования, обусловленной явной избыточностью данных в отношении.

Неявная избыточность в отношении ПРЕПОДАВАТЕЛЬ проявляется в одинаковых окладах у всех преподавателей и в одинаковых добавках к окладу за одинаковый стаж. Поэтому, если при изменении окладов за должность с 500 на 510 это значение изменят у всех преподавателей, кроме, например, Сидорова, то база станет противоречивой. Это пример аномалии редактирования для варианта с неявной избыточностью.

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

Избыточное дублирование данных и аномалииМетод нормальных форм