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 |
В данной таблице отметим те «аномалии», которые наблюдаются для такого представления данных.
Дублируется информация о сотрудниках, поскольку сотрудник может участвовать в нескольких проектах;
В таблицу нельзя вписать тех сотрудников, которые не заняты в проектах именно сейчас, а также тех сотрудников, которые вообще не работают над проектами;
Если сотрудник увольняется, запись о нем удаляется из таблицы, а вместе с ней – и проект, хотя работа над ним должна продолжаться.
Чтобы исключить «аномалии», необходимо преобразовать таблицу – разбить ее на две. Разобьем ее на две: ПРОЕКТЫ и СОТРУДНИКИ.
СОТРУДНИКИ
Номер Сотруд. | Фам. | Должн. | Оклад | Отдел | Тел. |
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 |
Рассмотрим табл. Сотрудники. Заметны следующие особенности:
Дублируется информация о телефонах для сотрудников одного отдела;
Если изменяется телефон отдела, необходимо изменять его у всех сотрудников отдела. То же самое с изменением размера окладов.
Нельзя включить данные о новом отделе, пока не будут набраны его сотрудники;
При увольнении всех сотрудников не сохраняются данные о самом отделе.
Поэтому, следуя правилам нормализации, необходимо выполнить декомпозицию таблицы СОТРУДНИКИ и разбить ее на три таблицы: СОТРУДНИКИ, ДОЛЖНОСТИ, ОТДЕЛЫ
СОТРУДНИКИ
Номер Сотруд. | Фам. | Должн. | Отдел |
1010 | Петров | Инженер | 115 |
1015 | Васильев | Инженер | 115 |
1036 | Куликов | Техник | 110 |
2122 | Зорин | Администратор | 105 |
ДОЛЖНОСТИ
Должн. | Оклад |
Инженер | 550 |
Техник | 450 |
Администратор | 630 |
ОТДЕЛЫ
Отдел | Тел. |
115 | 6-15 |
110 | 5-46 |
105 | 6-88 |
- Говорят, что отношение находится в первой нормальной форме, если все его атрибуты являются простыми. - Говорят, что отношение находится во второй нормальной форме, если оно удовлетворяет требованиям первой нормальной формы и каждый не ключевой атрибут функционально полно зависит от ключа (однозначно определяется им). - Говорят, что отношение находится в третьей нормальной форме, если оно удовлетворяет требованиям второй нормальной формы и при этом любой не ключевой атрибут зависит от ключа нетранзитивно. Транзитивной называется такая зависимость, при которой какой-либо не ключевой атрибут зависит от другого не ключевого атрибута, а тот, в свою очередь, уже зависит от ключа. Основным достоинством реляционной модели является ее простота.
- Базы данных. Классификация и структурная организация
- Виды структур данных
- Сетевую структуру данных можно представить в виде схемы.
- Реляционные базы данных
- Тип данных
- Кортеж, отношение
- 1. Принципы нормализации:
- 2. Виды логической связи.
- Состав субд
- Основные функции субд.
- Другие функции субд
- Основные понятия базы данных Microsoft Access
- Структура простейшей базы данных
- Свойства полей базы данных
- Типы данных
- Работа с субд Microsoft Access 2003
- Работа с таблицами
- Работа с запросами
- Работа с формами
- Работа со страницами доступа к данным
- Работа с отчетами