logo search
Лекции 2 семестр СУБД

1. Принципы нормализации:

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

Пример. Имеем сплошную таблицу Сотрудники- проекты.

Номер

Сотруд.

Номер

проекта

Номер

задания

Фам.

Должн.

Оклад

Отдел

Тел.

1010

AB-115

1.1

Петров

Инженер

550

115

6-15

1010

KN-20

1.3

Петров

Инженер

550

115

6-15

1015

ZT-14

5.2

Васильев

Инженер

550

115

6-15

1036

ZT-14

5.4

Куликов

Техник

450

110

5-46

2122

AK-177

1.2

Зорин

Администратор

630

105

6-88

2122

BC-18

3.6

Зорин

Администратор

630

105

6-88

В данной таблице отметим те «аномалии», которые наблюдаются для такого представления данных.

  1. Дублируется информация о сотрудниках, поскольку сотрудник может участвовать в нескольких проектах;

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

  3. Если сотрудник увольняется, запись о нем удаляется из таблицы, а вместе с ней – и проект, хотя работа над ним должна продолжаться.

Чтобы исключить «аномалии», необходимо преобразовать таблицу – разбить ее на две. Разобьем ее на две: ПРОЕКТЫ и СОТРУДНИКИ.

СОТРУДНИКИ

Номер

Сотруд.

Фам.

Должн.

Оклад

Отдел

Тел.

1010

Петров

Инженер

550

115

6-15

1010

Петров

Инженер

550

115

6-15

1015

Васильев

Инженер

550

115

6-15

1036

Куликов

Техник

450

110

5-46

2122

Зорин

Администратор

630

105

6-88

2122

Зорин

Администратор

630

105

6-88

ПРОЕКТЫ

Номер

Сотруд.

Номер

проекта

Номер

задания

1010

AB-115

1.1

1010

KN-20

1.3

1015

ZT-14

5.2

1036

ZT-14

5.4

2122

AK-177

1.2

2122

BC-18

3.6

Рассмотрим табл. Сотрудники. Заметны следующие особенности:

  1. Дублируется информация о телефонах для сотрудников одного отдела;

  2. Если изменяется телефон отдела, необходимо изменять его у всех сотрудников отдела. То же самое с изменением размера окладов.

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

  4. При увольнении всех сотрудников не сохраняются данные о самом отделе.

Поэтому, следуя правилам нормализации, необходимо выполнить декомпозицию таблицы СОТРУДНИКИ и разбить ее на три таблицы: СОТРУДНИКИ, ДОЛЖНОСТИ, ОТДЕЛЫ

СОТРУДНИКИ

Номер

Сотруд.

Фам.

Должн.

Отдел

1010

Петров

Инженер

115

1015

Васильев

Инженер

115

1036

Куликов

Техник

110

2122

Зорин

Администратор

105

ДОЛЖНОСТИ

Должн.

Оклад

Инженер

550

Техник

450

Администратор

630

ОТДЕЛЫ

Отдел

Тел.

115

6-15

110

5-46

105

6-88

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