Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Шпаргалочки.doc
Скачиваний:
10
Добавлен:
24.09.2019
Размер:
493.06 Кб
Скачать

30. Транзитивная зависимость и 3нф

3НФ основана на понятии транзитивной зависимости.

ТЗ. Если для атрибутов А, В и С некоторого отн-ия сущ-ют завис-сти вида А →В и В →С, то говорят, что атрибут С транзитивно зависит от атрибута А через атрибут В ( при условии., что атрибут А функционально не зависит ни от атрибута В, ни от атрибута С).

Рассмотрим отношение “Служащий – Отделение”. В нем сущ-ют следующие функц-ые завис-сти:

StaffNo(номер следующего) → BranchNo (номер отделения)

и BranchNo → BAddress (адрес отделения), SNo → City, City → Status, SNo → Status через City

В этом случае ТЗ StaffNo → Address осущ-ся через атрибут BranchNo. Данное утверждение справедливо, поскольку атрибут StaffNo не зависит функц-но от BranchNo и BAddress.

3НФ. Отн-ие, кот. нах-ся в 1 и 2 НФ и не имеет находящих в ПК атрибутов, кот. находились бы в транзитивной функц. завис-сти от этого ПК.

Таблица 12 Отношение FIRST Таблица 13 Отн-ие SECOND

Пусть в отношении FIRST существует функц. зависимость

CITY → STATUS, т.е. статус поставщика опред-ся его местонахождением. Тогда отношение SECOND не находится в 3НФ, т.к. в нем существует ТЗ: SNo → STATUS через атрибут CITY. (SNo → CITY и CITY → STATUS)

Отн-ие, кот. нах-ся в 2НФ, но не нах-ся в 3НФ, всегда может быть преобразовано в эквивалентный набор (двух) отн-ий, наход-ся в 3НФ. Для этого транзитивно зависимые атрибуты удаляются из такого отн-ия и помещаются в новое отн-ие вместе с копией их детерминанта (табл.15,16).

Таблица 15 Отношение SC Таблица 16 Отношение CS

У ровень нормализации отн-ия опред-ся связями атрибутов, а не их конкретными значениями в некоторое время. Нельзя с первого взгляда на набор данных некоторого отношения однозначно определить, находится ли оно, например, в 3НФ. Для этого необходимо представлять себе существующие между атрибутами зависимости.

Т.о., процесс нормализации заключается в декомпозиции исходного отн-ия посредством последовательного выполнения нескольких операции проекции реляционной алгебры. Полученные в рез-те декомпозиции отн-ия обеспечивают выполнение их соединения без потерь данных, поэтому данную процедуру называют беспроигрышной. Результаты декомпозиции можно обратить посредством операции (естественного) соединения.

31. Нормальная форма Бойса-Кодда

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

Для отношения с единственным потенциальным ключом его 3НФ и НФБК являются эквивалентными.

Для проверки принадлежности отношения к НФБК необходимо найти все его детерминанты и убедиться в том, что они являются потенциальными ключами. (Детерминантом является один или несколько атрибутов, от которых полностью функционально зависит другой атрибут).

Пример. Пусть имеется отношение S (табл. 17) с атрибутами (SNo, SNAME, CITY , STATUS), в котором атрибуты SNo и SNAME являются его потенциальными ключами, т.е. каждый поставщик имеет уникальный номер и уникальное имя.

Таблица 17 Отношение S

Поставщик Название Рейтинг Город

Так же предположим, что атрибуты STATUS и CITY явл-ся независимыми, т.е. функциональная зависимость CITY → STATUS больше не имеет место.

Потенциальными ключами в таком отн-ии явл-ся SNo и SNAME и существуют функц-ые зависимости.

SNo → SNAME

SNAME → SNo

SNo → STATUS

SNo → CITY

SNAME → STATUS

SNAME → CITY

Отношения находятся в НФБК, так как оба детерминанта (SNo и SNAME) явл-ся потенциальными ключами этого отношения.

Отношение SSP (табл. 18) с атрибутами (SNo, SNAME, PNo, QTY) не находится в НФБК, так как оно содержит два детерминанта SNo и SNAME, которые не являются его потенциальными ключами (SNo → SNAME; SNAME → SNo). Детерминант (SNo, PNo) является потенциальным ключом.

Таблица 18. Отношение SSP

Поставщик Название Детали Количество

Тем не менее отношение SSP находится в 3НФ (нет транзитивных зависимостей). Чтобы достичь НФБК необходимо отношение SSP разбить на два отношения:

SS (SNo, SNAME)

SP (SNo, PNo, QTY)