Архитектура Аудит Военная наука Иностранные языки Медицина Металлургия Метрология Образование Политология Производство Психология Стандартизация Технологии |
Разработка схемы связей таблиц, нормализация базы данных и приведение её к НФБК
Всякая реляционная база данных должна быть нормализована. Процесс нормализации имеет своей целью устранение избыточности данных и заключается в приведении к нормальной форме Бойса-Кодда. Нормализацией называется формальная процедура, в ходе которой атрибуты данных группируются в таблицы, а таблицы группируются в базу данных. Единицей, хранящейся в БД, информации является таблица. Каждая таблица представляет собой совокупность строк и столбцов, где строки соответствуют экземпляру, а столбцы - атрибутам. В терминах БД столбцы таблицы называются полями, а ее строки - записями. Нормализация выполняется поэтапно. Первые три шага были описаны доктором Э.Ф. Коддом в статье " Дальнейшая нормализация реляционной модели базы данных" в 1972г. Первая нормальная форма (1НФ). Для нее требуется, чтобы таблица была плоской и не содержала повторяющихся групп. У плоской таблицы есть только две характеристики - длина (количество записей или строк) и ширина (количество полей или столбцов). Такая таблица не должна содержать ячеек, включающих несколько значений. Никакую из систем управления базами данных (СУБД) не удовлетворяет только 1НФ, так как в этом случае необходимо определить большое число полей, многие из которых остаются в основном пустыми. Избыточные данные могут послужить причиной проблем целостности и снижение эффективности при внесении изменений, поэтому подобных решений при проектировании баз данных необходимо избегать. Вторая нормальная форма (2НФ). Для 2НФ требуется, чтобы все поля таблицы зависели от первичного ключа, то есть, чтобы первичный ключ однозначно определял запись и не был избыточен. В каждой таблице БД может существовать первичный ключ - поле или набор полей, однозначно идентифицирующий запись. Значение первичного ключа в таблице БД должно быть уникальным, т.е. в таблице не должно существовать двух и более записей с одинаковым значением первичного ключа. Те поля, которые зависят только от части первичного ключа, должны быть выделены в составе отдельных таблиц. 2НФ позволяет удалить большую часть повторяющихся данных, которые часто остаются после первого этапа нормализации. Для третьей нормальной формы (ЗНФ) требуется, чтобы все не ключевые столбцы таблицы зависели от первичного ключа таблицы, но были независимы друг от друга. Для этого требуется, чтобы таблицы были приведены к 1НФ и 2НФ. Введем определение детерминанта. Детерминант - это любой атрибут, от которого полностью функционально зависит некоторый другой атрибут. Введя данное понятие, можно дать определение НФБК. Отношение будет находиться в НФБК, если оно находится в 3НФ и каждый детерминант является потенциальным ключом. Отношение находится в четвертой нормальной форме (4НФ), если оно находится в НФБК и не имеет многозначных зависимостей. Отношение находится в пятой нормальной форме (5НФ) только в том случае, когда любая зависимость соединения в отношении следует из существования некоторого возможного ключа в данном отношении. Отношение находится в доменно-ключевой нормальной форме (ДКНФ), если каждое ограничение, накладываемое на это отношение, является логическим следствием определения доменов и ключей. Для большинства существующих СУБД необходимо представить проект базы данных в ЗНФ, так как этого вполне достаточно практически для всех обычных приложений. При разработке исключительно больших систем, когда необходимо максимальное сокращение объемов хранимых данных, желательно произвести дальнейшую нормализацию. Но в этом случае можно столкнуться с недостатками нормализации. Поскольку порог человеческого восприятия не позволяет одновременно анализировать большое число объектов с учетом их взаимосвязей, можно утверждать, что с увеличением числа нормализованных таблиц уменьшается целостное восприятие базы данных как системы взаимосвязанных данных. Другим недостатком нормализованной базы данных является необходимость считывать связанные данные из нескольких таблиц при выполнении одного запроса.
Ключи – сокращения: «Pk» (Primary key) – первичный ключ, «Uk» (Unique key) – уникальный ключ. Процессы со свойством – сокращения: «В» – ввод, «П» – просмотр, «К» – корректировка, «У» – удаление.
Рисунок 10. Схема связей таблиц базы данных «Учёт поставок, наличия и реализации товара в ООО «Долина» г. Оренбурга», построенная при помощи СУБД Access 2000 Популярное:
|
Последнее изменение этой страницы: 2017-03-03; Просмотров: 918; Нарушение авторского права страницы