русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Нормализация отношений


Дата добавления: 2015-07-09; просмотров: 733; Нарушение авторских прав


Пусть создана таблица Студент, содержащая следующие поля: № группы, ФИО, № зачетки, Дата рождения, Название специальности, Название факультета. Такая организация хранения информации имеет ряд недостатков:

- дублирование информации (наименование специальности и факультета повторяются для множества студентов), следовательно, большой объем таблицы;

- процедура обновления информации в таблице довольно сложна и трудоемка (например, изменилось название факультета).

Таблицы реляционной БД должны отвечать требованиям нормализации отношений. Нормализация отношений – это формальный аппарат ограничений на формирование таблиц (отношений), который позволяет устранить дублирование, обеспечивает непротиворечивость хранимых в базе данных, уменьшает трудозатраты на ведение базы данных.

Имеется три нормальные формы отношений.

1).Первая нормальная форма. Отношение приведено к первой нормальной форме, если все его атрибуты простые (т.е. далее неделимые). Так, если из таблицы Студент требуется получать сведения по имени студента, то атрибут ФИО следует разбить на части. Таблица Студент=(Название специальности, Название факультета) приведена к первой нормальной форме.

2). Вторая нормальная форма. Отношение задано во второй нормальной форме, если оно является отношением в первой нормальной форме, и каждый неключевой атрибут (реквизит) полностью зависит от любого возможного ключа. Чтобы привести отношение к второй нормальной форме, необходимо определить функциональную зависимость реквизитов. Функциональная зависимость реквизитов – это зависимость, при которой в экземпляре информационного объекта определенному значению ключевого реквизита соответствует только одно значение описательного реквизита. Например, отношение Студент = (№ группы, Фамилия, Имя, Отчество, № зачетки, Дата рождения) находится во второй нормальной форме. Все неключевые реквизиты однозначно определены и зависят от ключа - № зачетки.



Если ключ является составным. то говорят о функционально полной зависимости. Функционально полная зависимость неключевых реквизитов заключается в том, что каждый неключевой реквизит функционально зависит от составного ключа, но не находится в функциональной зависимости ни от какой части составного ключа. Например, отношение Успеваемость = (№ зачетки, Фамилия, Имя, Отчество, Дисциплина, Оценка) находится в первой нормальной форме. Но реквизиты Фамилия, Имя, Отчество не находятся в функционально полной зависимости от составного ключа № зачетки + Дисциплина. Реквизит Дисциплина может иметь несколько значений описательного элемента Фамилия и т.д.

3). Третья нормальная форма. Отношение находится в третьей нормальной форме, если оно находится во второй нормальной форме и отсутствует транзитивная зависимость реквизитов. Транзитивная зависимость наблюдается в том случае, если один из двух описательных реквизитов зависит от ключа, а другой описательный реквизит зависит от первого описательного реквизита. Например, в отношении Студент= (№ группы, ФИО, № зачетки, Дата рождения, Староста) три реквизита: № зачетки, № группы, Староста находятся в транзитивной зависимости. № группы зависит от № зачетки, а Староста зависит от № группы. Для устранения транзитивной зависимости необходимо часть реквизитов отношения Студент перенести в другое отношение Группа. Отношения примут следующий вид. Студент = (№ группы, ФИО, № зачетки, Дата рождения). Группа = (№ группы, Староста).

 



<== предыдущая лекция | следующая лекция ==>
 | Понятие информационно-логической модели


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 1.173 сек.