
- •Содержание
- •Основные понятия
- •Понятие данных
- •Файловые системы
- •Системы баз данных
- •История развития субд
- •Трехуровневая архитектура ansi/sparc
- •Общая характеристика моделей данных
- •Основные понятия модели данных
- •Представление статических и динамических свойств
- •Общая характеристика структурных компонентов. Множества: домены и атрибуты
- •Общая характеристика структурных компонентов. Отношения: сущности
- •Общая характеристика структурных компонентов. Отношения: связи
- •Общая характеристика ограничений целостности
- •Модель данных «сущность – связь»
- •Уровни представления информации
- •Уровень 1 – информация о сущностях и связях
- •Уровень 2. Структура информации
- •Ограничения целостности в модели сущность-связь
- •Расширенная модель данных сущность-связь: нотация idef1x
- •Реляционная модель данных
- •Базовые структурные компоненты реляционной модели данных
- •Целостная часть реляционной модели данных
- •Языковые средства описания данных
- •Манипуляционная часть реляционной модели данных
- •Подмножество sql для манипулирования данными
- •Примеры написания запросов
- •I. И еще несколько примеров написания запросов из документации [10]
- •Краткая характеристика языка sql pl db2® udb
- •Дополнительные возможности описания ограничений целостности
- •Дополнительные возможности db2
- •Описание данных
- •Манипулирование данными
- •Дополнительные возможности формирования запросов
- •Типы данных, определенные пользователем
- •Функции, определенные пользователем
- •Теория проектирования реляционных баз данных
- •Цели проектирования
- •Функциональные зависимости
- •1. Рефлексивность
- •2. Пополнение
- •3. Транзитивность
- •4. Псевдотранзитивность
- •5. Аддитивность (объединение)
- •6. Декомпозиция (проективность)
- •7. Композиция
- •Нормализация отношений
- •Внутренние структуры хранения
- •Структурная схема обработки запроса
- •Бинарные деревья
- •Многоходовые деревья
- •Сравнение методов индексирования
- •Создание индексов в db2®
- •Организация файлов базы данных в db2®
1. Рефлексивность
Если имеется некоторая совокупность атрибутов X = YZ (т.е. Y есть некоторое подмножество из X), тогда X Y.
Это тривиальная функциональная зависимость, в которой зависимость (правая часть) содержится в детерминанте (левой части).
Из этой зависимости следует (если Z = ∅), что X X.
2. Пополнение
Или расширение левой части.
Если существует функциональная зависимость X Y, то XZ YZ.
Важно, что функциональная зависимость X Y или принадлежит F, или может быть логически выведена из F с помощью описываемых правил.
Пример:
Пусть дана схема отношения R(A B C D), для которой определена функциональная зависимость
A B. Рассмотрим некоторую реализацию отношения:
|
|
|
|
|
|
Дано |
|
Следует |
||||||
R |
(A |
B |
C |
D) |
|
A |
|
B |
|
A |
C |
|
B |
C |
|
a1 |
b1 |
c1 |
d1 |
|
a1 |
|
b1 |
|
a1 |
c1 |
|
b1 |
c1 |
|
a2 |
b2 |
c1 |
d1 |
|
a2 |
|
b2 |
|
a2 |
c1 |
|
b2 |
c1 |
|
a1 |
b1 |
c1 |
d2 |
|
a1 |
|
b1 |
|
a1 |
c1 |
|
b1 |
c1 |
|
a3 |
b2 |
c2 |
d3 |
|
a3 |
|
b2 |
|
a3 |
c2 |
|
b2 |
c2 |
|
a1 |
b1 |
c2 |
d2 |
|
a1 |
|
b1 |
|
a1 |
c2 |
|
b1 |
c2 |
3. Транзитивность
Если X Y и Y W, то X W.
Рассмотрим пример:
|
|
|
|
|
|
|
|
Дано: |
|
|
|
Следует: |
||||
R |
(A |
B |
C |
D) |
|
A |
|
B |
и |
B |
|
C |
|
A |
|
C |
|
a1 |
b1 |
c2 |
d1 |
|
a1 |
|
b1 |
|
b1 |
|
c2 |
|
a1 |
|
c2 |
|
a2 |
b2 |
c1 |
d2 |
|
a2 |
|
b2 |
|
b2 |
|
c1 |
|
a2 |
|
c1 |
|
a3 |
b1 |
c2 |
d1 |
|
a3 |
|
b1 |
|
b1 |
|
c2 |
|
a3 |
|
c2 |
|
a3 |
b1 |
c2 |
d3 |
|
a3 |
|
b1 |
|
b1 |
|
c2 |
|
a3 |
|
c2 |