- •Глава 10. Система управления базами данных access 2007
- •10.1 Компоненты экономических информационных систем. Классификация и основные свойства единиц информации
- •10.2 Понятие предметной области
- •10.3 Понятия о базах данных и системах управления ими. Классификация баз данных
- •10.4 Модель данных. Основные виды моделей. Сравнение моделей данных
- •10.5 Функциональные зависимости и ключи.
- •10.6 Понятие нормализации отношений. Нормальные формы
- •10.7 Реляционная база данных и ее особенности. Виды связей между реляционными таблицами
- •10.8 Таблицы и их структура. Типы полей и их свойства. Контроль вводимых данных
- •10.9 Операции над таблицами. Фильтрация данных. Установление связей между таблицами. Обеспечение целостности данных
- •10.10 Запросы к базе данных и их использование. Виды запросов. Технология создания
- •10.11 Запросы к базе данных с использованием языка sql. Извлечение данных. Функции агрегирования
- •10.12 Запросы к базе данных с использованием языка sql. Извлечение данных из нескольких таблиц. Соединения таблиц
- •10.13 Запросы к базе данных с использованием языка sql. Qsl-запросы на изменение. Подчиненный запрос
- •10.14 Формы, их виды. Структура формы. Свойства формы. Технология создания форм. Элементы управления и их использование в формах
- •10.15 Отчеты, их назначение и использование. Виды отчетов. Структура отчета. Технология создания
- •10.17 Макросы и их конструирование
10.6 Понятие нормализации отношений. Нормальные формы
Центральная задача проектирования базы данных экономической информационной системы - определение количества отношений и их атрибутного состава.
Задача группировки атрибутов в отношения, набор которых заранее не фиксирован, допускает множество различных вариантов решения. Рациональные варианты группировки должны учитывать следующие требования:
множество отношений должно обеспечивать минимальную избыточность представления информации;
корректировка отношений не должна приводить к двусмысленности или потере информации;
перестройка набора отношений при добавлении в базу данных новых атрибутов должна быть минимальной.
Нормализация представляет собой способ преобразования отношений, позволяющий улучшить характеристики БД по перечисленным критериям.
Ограничения на значения, хранимые в реляционной базе данных, достаточно многочисленны. Соблюдение этих ограничений в конкретных отношениях связано с наличием так называемых нормальных форм. Процесс преобразования отношений базы данных к той или иной нормальной форме называется нормализацией отношений. Нормальные формы нумеруются последовательно, и чем больше номер нормальной формы, тем больше ограничений на хранимые значения должно соблюдаться в соответствующем отношении.
Отношение в первой нормальной форме - это обычное отношение с двухуровневой структурой. Недопустимость в структуре отношения третьего и последующих уровней является ограничением, определяющим первую нормальную форму отношения.
Преобразование ненормализованного отношения в представление, соответствующее первой нормальной форме - это операция нормализации для отношения. Реляционная база данных в целом характеризуется первой нормальной формой , если этой форме соответствуют все ее отношения.
Отношение имеет вторую нормальную форму, если оно соответствует первой нормальной форме и не содержит неполных функциональных зависимостей.
Отношение, не соответствующее второй нормальной форме, характеризуется избыточностью хранимых данных. Например, отношение Магазин, Изделие, План, Цена. Вероятным ключом являются атрибуты Магазин, Изделие. Но Цена определяется только Изделием. Избыточность здесь иллюстрируется тем фактом, что цена изделия указывается столько раз, сколько магазинов продают это изделие. Переход ко второй нормальной форме и соответственно устранение избыточности данных связано с созданием двух отношений вместо одного исходного: Магазин, Изделие, План и Изделие, Цена.
База данных находится во второй нормальной форме, если все ее отношения находятся во второй нормальной форме.
Отношение соответствует третьей нормальной форме, если оно соответствует второй нормальной форме, и среди его атрибутов отсутствуют транзитивные функциональные зависимости.
Транзитивная функциональная зависимость содержит две функциональные зависимости:
вероятный ключ отношения функционально определяет неключевой атрибут;
этот атрибут в свою очередь функционально определяет другой неключевой атрибут.
Например, отношение №зачетки, ФИО, №группы, Факультет. №группы зависит от №зачетки, а Факультет зависит от №группы. Возникает транзитивная зависимость.
Возникает избыточность данных, т.к. принадлежность данной группы к факультету указывается столько раз, сколько студентов обучается в данной группе. Ликвидировать данную избыточность также можно, разделив указанное отношение на два: №зачетки, ФИО, №группы и №группы, Факультет.
База данных находится в третьей нормальной форме, если все ее отношения находятся в третьей нормальной форме.
Приведенные примеры показывают, что отношения, в которых наблюдается одна или ни одной функциональной зависимости, соответствуют условиям второй и третьей нормальной форм, т.к. неполная и транзитивная функциональные зависимости представляют собой две зависимости. На этом принципе основан алгоритм получения отношений в третьей нормальной форме.