Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Часть 1 - все в одном.doc
Скачиваний:
11
Добавлен:
04.09.2019
Размер:
3.34 Mб
Скачать
  1. Ключи отношения с точки зрения функциональной зависимости. Примеры

Набор К атрибутов отношения R называется суперключом отношения R, если все атрибуты R функционально зависит от К.

Набор К атрибутов отношения R называется возможным ключом отношения R, если верно, что:

    • все атрибуты отношения R функционально зависит от К;

    • ни один атрибут из набора К не может быть удален без нарушения свойства (а).

Формальное определение возможного ключа. Пусть М – полный набор атрибутов отношения R Подмножество атрибутов К отношения R является возможным ключом, если

  • А  М R.K R.A

  • К'  K B  M R.K' R.B

Утверждение: Любое отношение имеет возможный ключ.

  1. Свойства функциональных зависимостей. Примеры.

Свойства 1),2),3)составляют систему аксиом Армстронга

1) Транзитивность :

если A B и B C, то A C.

2) Проективность:

если B A, то A B

3) Аддитивность (объединение):

если A B и A C, то A (B,C)

4)Рефлексивность:

A A.

5)Псевдотранзитивность:

если А В и (В,С) D, то (A,C)D

6) Продолжение:

если А В, то (А, С) В

для любого атрибута С.

7) Пополнение:

если А В, то (А, С) (В, С)

для любого атрибута С.

8) Декомпозиция:

если А В и С В, то А С

  1. Логическое следование функциональных зависимостей. Примеры

Пусть в отношении R имеется множество функциональных зависимостей F и конкретная зависимость А  С, которая не входит в F. Зависимость А  С логически следует из зависимостей F, если она может быть выведена из F с помощью аксиом функциональных зависимостей. Также говорят, что зависимость А  С выводима из F.

Например, если в R(A, B, C) и множество F состоит из А  В, то из нее логически следуют (выводимы) следующие зависимости:

(А, С) В - применяется свойство продолжения;

(А, С) (В, С) - применяется свойство пополнения.

  1. Замыкание, полнота, эквивалентность и минимальное покрытие функциональных зависимостей. Примеры

Пусть в отношении R имеется множество FD F. Множество всех FD, являющихся следствием (выводимыми) из F, называется (логическим) замыканием F, которое обозначается через F+. Очевидно, что F  F+ и F+ = F++.

Множество FD F образует полное семейство зависимостей, если F = F+.

Множества FD F и G (логически) эквивалентны, если F+ = G+.

Пусть задано множество FD F. Говорят, что множество FD G образует базис зависимостей F или, то же самое, образует минимальное покрытие F, если G является таким минимальным подмножеством F, что G+ =F+.

  1. Неполная (частичная) функциональная зависимость и вторая нормальная форма. Примеры

Пусть в отношении R имеются наборы атрибутов А и В. Зависимость R.A  R.B называется полной если В не зависит функционально ни от какого поднабора С  А, не содержащего В.

  • Атрибут К-ВО полно функционально зависит от (НТ, НП, ДАТА)

  • Атрибуты ИМЯ и ГОРОД полно функционально зависят от НП

  • Атрибуты ИМЯ и ГОРОД не полно функционально зависят от (НТ, НП, ДАТА

Аномалии вставки, удаления, замены при наличии неполной FD

  • Аномалия обновления. При необходимости изменения города покупа- теля следует помнить, что сведения о покупателе могут повторяться.

  • Аномалия вставки. При необходимости включения сведений о новом покупателе (Игнатов) это можно будет сделать только тогда, когда он сделает первую покупку.

  • Аномалия удаления. При удалении сведений о покупке (Петрова) удаляются сведения и о его покупателе. Если же эти сведения о покупателе в единственном числе, то они теряются в базе данных

Вторая нормальная форма (2NF)

Отношение находится во второй нормальной форме, если оно находится в первой нормальной форме и все его неключевые атрибуты функционально полно зависят от возможного ключа.

Теорема (Хита). Отношение R с наборами атрибутов А, В, С , где R.A  R.B, является естественным соединением проекций R[A, B] и R[A, C].

Такое разбиение называется бинарной декомпозицией.

Алгоритм приведения к 2NF. Пусть R имеет множество атрибутов M. Если в R имеется неполная FD R.A  R.B неключевого атрибута B от возможного ключа А, то R разбивается на два отношения: R1[A, B] и R2[M - B]. Если результирующие отношения все еще не находятся в 2NF, то к ним опять применяется этот алгоритм.

Пример приведения в 2NF

Пример приведения в 2NF – итоги

  • Исходное отношение содержит информацию о двух сущностях, результирующие – каждое по одной сущности.

  • Результирующие отношения не содержат аномалий вставки, удаления, замены.

  • Исходное отношение можно восстановить из результирующих с помощью операции естественного соединения.

  • При таком разбиении не теряются функциональные зависимости (то есть зависимости исходного и результирующих отношений эквивалентны)

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]