- •Введение
- •1.Отношения и реляционные базы данных
- •1.1Основные понятия и определения
- •1.2Цели проектирования бд
- •Избыточные функциональные зависимости
- •Нормальная форма Бойса-Кодда
- •Обобщенный алгоритм метода декомпозиции.
- •Пример проектирования бд методом декомпозиции.
- •Задания для самостоятельной работы
- •2.2Метод сущностей и связей Основные понятия и определения
- •Общий подход к построению бд
- •Правила построения предварительных отношений
- •Пример er-проектирования бд
- •Задания для самостоятельной работы
- •Библиографический список
- •Оглавление
- •1. Отношения и реляционные базы данных 4
- •2. Методы проектирования бд 11
- •0 Нижнекамск - 1998
1.2Цели проектирования бд
При проектировании БД необходимо наметить прежде всего цели проектирования. В частности, необходимо определить, в чем заключается желаемый конечный результат процесса проектирования реляционных БД?
Среди множества целей, стоящих перед проектированием, следующие цели необходимо выделить специально, так как они представляются наиболее важными:
возможность хранения всех необходимых данных в БД;
исключение избыточных данных;
сведение числа хранимых в БД отношений к минимуму;
нормализация отношений для упрощения решения проблем, связанных с обновлением и удалением данных.
Из этих целей вторая и четвертая цели требуют дополнительного разъяснения.
Определение 1.5
Дублированием данных называется повторное появление одного и того же элемента какого-либо домена в различных кортежах.
Пример:
ТАБNo - табельный номер служащего,
НАЧК - фамилия его начальника.
ТАБNo |
НАЧК |
125 |
Иванов |
138 |
Петров |
195 |
Петров |
200 |
Иванов |
Удаление дублирования приводит к тому, что теряется информация о начальниках служащих:
ТАБNo |
НАЧК |
125 |
Иванов |
138 |
Петров |
195 |
- |
200 |
- |
Определение 1.6
Избыточным дублированием называется такое дублирование, при котором удаление дубликатов в отношении не приводит к потере информации.
Пример:
НТЕЛ - номер телефона начальника.
ТАБNo |
НАЧК |
НТЕЛ |
125 |
Иванов |
434343 |
138 |
Петров |
234567 |
195 |
Петров |
234567 |
200 |
Иванов |
434343 |
Удаление дублирования телефонных номеров не приводит к потере информации о них, так как эти номера можно найти из других кортежей:
ТАБNo |
НАЧК |
НТЕЛ |
125 |
Иванов |
434343 |
138 |
Петров |
234567 |
195 |
Петров |
- |
200 |
Иванов |
- |
Однако такой способ исключения избыточности имеет существенные недостатки:
если из кортежа <195, Петров, - > пользователь не может определить номер телефона, ему необходимо предпринять дополнительные усилия по поиску этой информации из других кортежей;
если служащий с номером 138 будет уволен, то кортеж <138,Петров,234567>, будет исключен, что повлечет за собой потерю информации ни в чем не повинного начальника.
Корректный способ исключения избыточности заключается в разбиении отношения на два отношения следующим образом:
ТАБNo |
НАЧК |
|
НАЧК |
НТЕЛ |
125 |
Иванов |
|
Иванов |
434343 |
138 |
Петров |
|
Петров |
234567 |
195 |
Петров |
|
|
|
200 |
Иванов |
|
|
|
2. Методы проектирования БД
2.1Метод декомпозиции
Перед началом процесса разбиения отношений для устранения различных аномалий, возникающих при добавлении, удалении, модификации записей, необходимо решить следующие вопросы:
Из какого источника получаются отношения?
Каким образом распознаются отношения, нуждающиеся в разбиении?
Каким образом будет осуществляться разбиение?
Что является признаком завершения процесса разбиения?
Первая нормальная форма отношений
Отправной точкой для процесса разбиения может служить отношение, находящееся в первой нормальной форме (1НФ).
Определение 2.1
Говорят, что отношение находится в 1НФ, если каждый его элемент имеет и всегда будет иметь атомарное значение.
Универсальное отношение находится в 1НФ.
Процесс разбиения отношений с целью уменьшения вероятности возникновения аномалий называется декомпозицией.
Понятие функциональной зависимости атрибутов
Основой для осуществления декомпозиции является понятие функциональной зависимости между атрибутами.
Определение 2.2
Пусть даны два атрибута
и
.
Говорят, что
функционально зависит от
,
если для каждого значения
существует ровно одно связанное с ним
значение
(в каждый момент времени).
и могут быть составными, то есть они могут представлять не единичные атрибуты, а группы атрибутов.
Для обозначения функциональной зависимости есть несколько способов нотации. Наиболее часто используемые способы следующие:
- математическая форма
записи функциональной зависимости
от
;
- диаграмма, или графическая форма
записи.
В конкретной ситуации функциональная зависимость определяется путем анализа и детализации свойств всех атрибутов в отношении и выяснении того, как атрибуты соотносятся между собой.
