- •2 8. Функциональные зависимости и 1нф.
- •29. Полная функциональная зависимость и 2нф
- •30. Транзитивная зависимость и 3нф
- •31. Нормальная форма Бойса-Кодда
- •32. Понятие er-модели
- •33. Показатель кардинальности связи и степень участия сущностей
- •36. Логическое проектирование бд с помощью case-средства OpenModelSphere.
- •37. Физическое проектирование бд с помощью case-средства OpenModelSphere.
- •40. Язык запросов sql.
- •41. Операторы манипулирования данными языка sql.
- •47. Диалекты базы данных FireBird.
- •48. Типы данных с фиксированной точкой.
- •49. Безопасность бд в операционной среде.
- •50. Защита сервера.
- •51. Безопасность на уровне базы данных.
- •52. Файл конфигурации FireBird.
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)