Базаданных – это совокупность взаимосвязанных данных, находящихся под управлением системы управления базой данных (СУБД).
Системауправлениябазойданных – совокупность языковых и программных средств, облегчающих для пользователей выполнение всех операций, связанных с организацией хранения данных, их корректировки и доступа к ним.
Этапы проектирования реляционной БД декомпозиционным методом
1) Разрабатывается универсальное отношение для БД (в универсальное отношение включаются все атрибуты, представляющие интерес для данного проектирования).
2) Определяются все функциональные зависимости между атрибутами данного отношения.
3) Определяется, находится ли отношение в нормальной форме Бойса – Кодда. Если да, то проектирование завершается, если нет, то осуществляется декомпозиция, т.е. разбиение отношения.
4) Шаги 2) и 3) повторяются для каждого нового отношения, полученного в результате декомпозиции. Проектирование завершается, когда все отношения будут находиться в НФБК.
Ключ – поле (атрибут), по которому можно однозначно определить каждую запись в таблице.
Функциональная зависимость – (А-> В) атрибут В функционально зависит от атрибута А если в любой момент времени каждому значению атрибута А соответствует одно значение атрибута В.
Атрибут В функционально полно зависит от атрибута А если В не зависит ни от какого подмножества А.
Нормализация – процесс построения оптимальной структуры таблиц и связи между ними.
Теория нормализации основана на том, что определенный набор таблиц обладает лучшими свойствами при включении, модификации и удалении данных, чем все остальные наборы таблиц, с помощью которых могут быть представлены те же данные.
Нормализованнымотношением называют отношение, каждое поле которого содержит только атомарные значения. (пример про ФИО)
Определение первойнормальнойформы (1НФ): отношение r находится в 1НФ, если каждый его элемент имеет и всегда будет иметь атомарное значение. (Это определение просто устанавливает тот факт, что любое нормализованное отношение находится в 1НФ.)
Определение второйнормальнойформы (2НФ): отношение r находится во 2НФ, если оно находится в 1НФ и если каждый его атрибут, не являющийся основным атрибутом, функционально полно зависит от первичного ключа этого отношения.
Определение третьейнормальнойформы (3НФ): отношение r находится в 3НФ, если оно является отношением во 2НФ и каждый его атрибут, не являющийся основным, не транзитивно зависит от первичного ключа этого отношения.
Транзитивная зависимость определяется следующим образом: если X -> Y и Y -> Z, то X -> Z (Z транзитивно зависит от X).
A, B -> C
A, B -> D
C -> D
C -> E
Первичный ключ: AB.
Отношение находится в 1НФ, поскольку все атрибуты имеют атомарные значения.
Отношение находится во 2НФ, т.к. все атрибуты функционально полно зависят от первичного ключа отношения.
Так как A, B -> C; C -> E, т. е. E транзитивно зависит от первичного ключа, значит отношение не находится в 3НФ.
Отношение находится в НФБК если каждый детерминант отношения является его возможным ключом.
Детерминант – это атрибут, от которого зависит другой атрибут.
Отношение r находится в 4НФ тогда и только тогда, когда при существовании многозначной зависимости в r атрибута Y от атрибута X, все остальные атрибуты r функционально зависят от Х.
Атрибут Х многозначно определяет атрибут Y, если с каждым значением x может использоваться значение y из фиксированного подмножества значений Y. Обозначается: X ↠ Y.
Избыточной функциональной зависимостью называют зависимость, заключающую в себе такую информацию, которая может быть получена на основе других зависимостей из числа использованных при проектировании БД.
Пусть r – отношение со схемой R,
w, x, y, z – подмножества R.
1-я аксиома вывода. Рефлексивность.
В r всегда имеет место Х -> Х
2-я аксиома вывода. Пополнение.
Если r удовлетворяет Х -> Y, то r удовлетворяет F-зависимости XZ -> Y
3-я аксиома вывода. Аддитивность (так же известна под названием – объединение).
Если отношение r удовлетворяет X -> Y и X -> Z, то r удовлетворяет F-зависимости Х -> YZ. (можно объединить правые части)
4-я аксиома вывода. Проективность.
Если отношение r удовлетворяет X -> YZ, то r удовлетворяет X -> Y и X -> Z.
(разбиваем совокупность)
5-я аксиома вывода. Транзитивность.
Х -> Y и Y -> Z влечет за собой X -> Z. (избыточная транзитивная зависимость может быть удалена)
6-я аксиома вывода. Псевдотранзитивность.
Если r удовлетворяет зависимостям X -> Y и YZ -> W, то r удовлетворяет XZ -> W.
Исходная диаграмма функциональных зависимостей:
A -> B; A -> D; A -> G,
D -> G,
G -> D; G -> C; G -> F; G -> E,
E -> F,
F -> E
Удалим из исходного набора функциональных зависимостей все избыточные: