2) Подведения итогов. Смысл: обработка некоторых столбцов отношений с использованием некоторых агрегатных функций.
Операции реляционной алгебры используются в СУБД для следующих целей:
1. Определение области выборки
2. Определение области обновления
3. Определение виртуальных отношений
4. Определение правил безопасности
5. Определение снимков
ОСНОВЫ ПРОЕКТИРОВАНИЯ СТРУКТУР БАЗ ДАННЫХ
ФУНКЦИОНАЛЬНАЯ ЗАВИСИМОСТЬ
Пусть R – это отношение, а X и Y – произвольное подмножество множества атрибутов отношения R. Говорят, что Y функционально зависит от X тогда и только тогда, когда каждое значение множества Х связано в точности с 1 значением множества Y. Записывается эта зависимость следующим образом: Х→Y.
S# |
CITY |
P# |
QTY |
S1 |
London |
P1 |
100 |
S1 |
London |
P2 |
100 |
S2 |
Paris |
P1 |
200 |
S2 |
Paris |
P2 |
200 |
S3 |
Paris |
P2 |
300 |
S4 |
London |
P2 |
400 |
S4 |
London |
P4 |
400 |
S4 |
London |
P5 |
400 |
S#→CITY
S#→QTY
S#P#→CITY
QTY→S#
Следует учитывать 2 аспекта:
1. Функциональная зависимость в определенный момент времени
2. Функциональные зависимости для всех возможных значений отношений
Для функциональной зависимости существуют следующие правила:
1. Рефлективность – означает, что если В – является подмножеством А, то А определяет В (А→В)
2. Дополнение – если А определяет В, то АС→ВС
3. Транзитивность – означает, что если А→В и В→С, то А→С
4. Самоопределение - А→А
5. Декомпозиция – если А→ВС, то А→В и А→С
6. Объединение – если А→В и А→С, то А→ВС
7. Композиция – если А→В и С→D, то АС→BD
НОРМАЛИЗАЦИЯ ОТНОШЕНИЙ
1. 1НФ – отношение находится, если все входящие в него атрибуты имеют атомарное значение
S# |
STATUS |
CITY |
P# |
QTY |
S1 |
20 |
London |
P1,P2,P3 |
300,200,400 |
S2 |
10 |
Paris |
P1,P2 |
300,400 |
S3 |
10 |
Paris |
P2 |
200 |
Чтобы привести к 1НФ:
S# |
STATUS |
CITY |
P# |
QTY |
S1 |
20 |
London |
P1 |
300 |
S1 |
20 |
London |
P2 |
200 |
S1 |
20 |
London |
P3 |
400 |
S2 |
10 |
Paris |
P1 |
300 |
S2 |
10 |
Paris |
P2 |
400 |
S3 |
10 |
Paris |
P2 |
200 |
По отношению к находящемуся в 1НФ, характерны следующие аномалии при выполнении операций обновления:
a) INSERT – нельзя ввести данные о поставщике, если он не поставил товар
b) DELETE – при удалении информации о поставке нужно удалять информацию о поставщике
c) UPDATE – при выполнении этой операции необходимо просматривать все отношение, т.к. значение атрибута CITY может повторятся несколько раз
Для отношения 1НФ функциональные зависимости можно представить в виде следующей диаграммы:
2. 2НФ. Для того, чтобы устранить рассмотренные аномалии в операции обновления, отношение приводится ко второй нормальной форме. Отношение находится во второй нормальной форме, если оно находится в первой нормальной форме и каждый неключевой атрибут функционально полно зависит от первичного ключа.
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.