Нормализация таблиц
Следующий шаг на пути проектирования структуры реляционной базы данных – нормализация таблиц. Нормализация — это процесс организации данных в базе данных, включающий создание таблиц и установление отношений между ними в соответствии с правилами, которые обеспечивают защиту данных и делают базу данных более гибкой, устраняя избыточность и несогласованные зависимости.
Нормализация таблиц представляет собой последовательное изменение структуры таблиц до тех пор, пока она не будет удовлетворять требованиям последней формы нормализации. Всего существует шесть форм нормализации: первая нормальная форма, вторая нормальная форма, третья нормальная форма, нормальная форма Бойса-Кодда, четвертая нормальная форма и пятая нормальная форма или нормальная форма проекции-соединения [6, 8].
Первая нормальная форма: запрещает повторяющиеся столбцы (содержащие одинаковую по смыслу информацию); запрещает множественные столбцы (содержащие значения типа списка и т.п.); требует определить первичный ключ для таблицы, то есть тот столбец или комбинацию столбцов, которые однозначно определяют каждую строку.
В таблицах базы данных «Ремонт компьютеров» ни одно из полей не содержит более одного значения. В таблице Компьютеры все неключевые атрибуты определяются ключом Код компьютера. В таблице Мастера в качестве первичного ключа используется Код мастера, а в таблице Диагностика неисправностей – Код поломки. Таблицы отвечают требованиям первой нормальной формы.
Вторая нормальная форма.Таблица находится во второй нормальной форме, если она удовлетворяет требованиям первой нормальной формы и все ее поля, не входящие в первичный ключ, связаны полной функциональной зависимостью с первичным ключом. В случаях, когда таблица находится в первой нормальной форме и первичный ключ у нее состоит из одного столбца, то она автоматически находится во второй нормальной форме.
Можно сделать вывод, что таблицы базы данных «Ремонт компьютеров» находятся во второй нормальной форме.
Третья нормальная форма.Таблица находится в третьей нормальной форме, если она удовлетворяет определению второй нормальной формы и ни одно из не ключевых полей не зависит функционально от любого другого не ключевого поля.
Таблица Диагностика неисправностей не находится в третьей нормальной форме, поскольку поле Способы устранения поломкизависит не только от ключевого поляКод поломки, но и от не ключевого поля Причина поломки. Чтобы привести таблицу к третьей нормальной форме, необходимо ее разбить на две таблицы: Диагностика неисправностей и Устранение поломки.
Таблица Диагностика неисправностей предназначена для ввода информации о причинах поломки и содержит следующие данные:
§ Код поломки;
§ Причина поломки.
Таблица Устранение поломки предназначена для ввода информации о способах устранения поломки. Таблица включает в себя следующие атрибуты:
§ Код поломки;
§ Способы устранения поломки;
§ Цена.
Поле Код поломки в таблице Устранение поломки является первичным ключом и обеспечивает связь с таблицами Диагностика неисправностей и Ремонт компьютеров.
Между таблицами Диагностика неисправностей и Устранение поломки установлена связь «один-ко-многим», поскольку одной поломке соответствует несколько способов ее устранения.
На практике нормализация таблиц базы данных заканчивается третьей нормальной формой.
Все таблицы базы данных «Ремонт компьютеров» находятся в третьей нормальной форме, и дальнейшая нормализация не требуется. Соответственно выполняются три основных правила нормализации:
§ Значения, находящиеся в полях, не повторяются;
§ Все неключевые поля функционально связаны с ключом;
§ Между не ключевыми полями нет скрытых зависимостей.
Рис. 2. Результат нормализации
РАЗДЕЛ 2. проектирование объектов БАЗЫ ДАННЫХ «РЕМОНТ КОМПЬЮТЕРОВ»
Дата добавления: 2014-12-16; просмотров: 2190;