- •Конспект лекций по курсу
- •«Информационное обеспечение разработок и исследований»
- •Редакция 2008/1
- •Введение
- •История зарождения и развития компьютерных баз данных
- •Базы и банки данных
- •Уровни схематических моделей бд
- •Проектирование реляционных баз данных
- •Терминология реляционной модели бд:
- •Классический подход к проектированию реляционных баз данных
- •Функциональные зависимости
- •Основные принципы нормализации
- •1. Первая нормальная форма (1нф)
- •2. Вторая нормальная форма
- •3. Третья нормальная форма
- •4. Нормальная форма Бойса-Кодда
- •5. Четвертая нормальная форма
- •6. Пятая нормальная форма
- •7. Доменно-ключевая нормальная форма (дкнф)
- •Концептуальные модели и схемы баз данных
- •Инфологическая модель er: Entity-Relationship (Сущность-Связь)
- •Основные понятия модели «Сущность-Связь»
- •Преобразование er-схемы в реляционную модель
- •Методология idef1
- •Виды связей
Функциональные зависимости
Функциональная зависимость
В отношении R атрибут Y функционально зависит от атрибута X (X и Y могут быть составными) в том и только в том случае, если каждому значению X соответствует в точности одно значение Y: R.X --> R.Y.
Поле В таблицы отношения функционально зависит от поля А той же таблицы в том и только в том случае, когда в любой заданный момент времени для каждого из различных значений поля А обязательно существует только одно из различных значений поля В.
Полная функциональная зависимость
Функциональная зависимость R.X --> R.Y называется полной, если атрибут Y не зависит функционально от любого точного подмножества X.
Поле В находится в полной функциональной зависимости от составного поля А, если оно функционально зависит от А и не зависит функционально от любого подмножества поля А.
Транзитивная функциональная зависимость
Функциональная зависимость R.X --> R.Y называется транзитивной, если существует такой атрибут Z, что имеются функциональные зависимости R.X --> R.Z и R.Z --> R.Y и отсутствует функциональная зависимость R.Z --> R.X.
Неключевой атрибут
Неключевым атрибутом называется любой атрибут отношения, не входящий в состав ключа (в частности, первичного).
Взаимно независимые атрибуты
Два или более атрибута взаимно независимы, если ни один из этих атрибутов не является функционально зависимым от других.
Многозначные зависимости
В отношении R (A, B, C) существует многозначная зависимость R.A -->> R.B в том и только том случае, если множество значений B, соответствующее паре значений A и C, зависит только от A и не зависит от С.
Поле А многозначно определяет поле В той же таблицы, если для каждого значения поля А существует хорошо определенное множество соответствующих значений В.
Основные принципы нормализации
Классический подход к проектированию реляционных баз данных основывается на декомпозиции отношений с целью их нормализации.
1. Первая нормальная форма (1нф)
Отношение R находится в первой нормальной форме (1НФ), когда оно удовлетворяет требованиям, сформулированным к понятию «отношения», т.е., в ячейках этой таблицы содержатся одиночные значения, столбец имеет в пределах таблицы уникальное имя и единый тип данных, нет повторяющихся строк.
2. Вторая нормальная форма
Отношение R находится во второй нормальной форме (2НФ) в том случае, когда находится в 1НФ, и каждый из неключевых атрибутов полностью зависит от всего ключа.
Табл.1. СЕКЦИИ (КодСтудента, Секция, Плата)
-
КодСтудента
Секция
Плата
110
плавание
150
110
футбол
110
111
волейбол
120
111
плавание
150
122
бокс
100
112
шахматы
100
Первая нормальная форма подвержена аномалиям вставки и удаления. Так, для табл.1 при удалении студента «122» будет потеряна информация о плате в секции «бокс» и нельзя ввести данные о новой секции, пока в нее не будет записан студент. Основной причиной возникновения аномалий является функциональная зависимость атрибутов не от всего ключа, а только от его части. В данном случае Плата зависит только от Секции (Секция->Плата).