Читайте также:
|
|
Одни и те же данные могут группироваться в таблицы различными способами. Группировка полей в таблицах должна быть рациональной, что означает сведение к минимуму дублирования данных и упрощение процедуры их обработки и обновления. Нормализация таблиц – это формальный аппарат ограничений на формирование таблиц, который позволяет устранить дублирование данных, обеспечивает непротиворечивость хранимых в базе данных, уменьшает трудозатраты на ведение базы данных (ввод и корректировку данных). При практическом проектировании баз данных обычно выделяют три нормальные формы таблиц.
Таблица называется приведенной к первой нормальной форме, если все ее поля простые (далее неделимы). Преобразование таблицы к первой нормальной форме может привести к увеличению количества полей таблицы и изменению ключа. Таблица в первой нормальной форме не должна иметь повторяющихся записей и (или) групп полей. Например, таблица Студенты1 с полями Код, Фамилия, Имя, Отчество, Дата, Группа, которую будем обозначать:
Студенты1 = (Код*, Фамилия, Имя, Отчество, Дата, Группа)
находится в первой нормальной форме (звездочка обозначает ключевое поле).
Таблица находится во второй нормальной форме, если она находится в первой нормальной форме и каждое неключевое (описательное) поле функционально зависит от ключа.
Функциональная зависимость полей - это зависимость, при которой определенному значению ключевого поля соответствует только одно значение описательного поля. Например, указанная выше таблица Студенты1 находится как в первой, так и во второй нормальных формах, так как ключевому полю Код соответствует только одно значение каждого из описательных полей.
Таблица находится в третьей нормальной форме, если она находится во второй нормальной форме, и каждое неключевое поле нетранзитивно зависит от первичного ключа.
Транзитивная зависимость полей имеет место в том случае, если одно из двух описательных полей зависит от ключа, а другое описательное поле зависит от первого описательного поля. Например, таблица
Студенты2 = (Код*, Фамилия, Имя, Отчество, Дата, Группа, Староста)
не находится в третьей нормальной форме, так как описательное поле Староста зависит от описательного поля Группа. Поэтому таблица Студенты2 должна быть расщеплена на две связанные таблицы, каждая из которых находится в третьей нормальной форме:
Таблица1 = (Код*, Фамилия, Имя, Отчество, Дата, Группа),
Таблица2 = (Группа*, Староста).
Дата добавления: 2015-08-18; просмотров: 65 | Нарушение авторских прав
<== предыдущая страница | | | следующая страница ==> |
Реляционные базы данных | | | Основные характеристики СУБД MS Access |