Для приведения отношения во 2НФ необходимо атрибуты, зависимые от части составного первичного ключа, вынести в отдельное отношение вместе с этой частью.
Приведение отношения во 2НФ: УСПЕВАЕМОСТЬ (КодПредм, НомСтуд, Балл) ГРСПЕЦ (НомСтуд, Группа, Спец)
4. Отношение находится в 3НФ, если… Пример нарушения 3НФ. Правило перевода отношения из 2НФ в 3НФ. Пример.
Отношение находится в 3НФ, если оно находится во 2НФ и каждый неключевой атрибут нетранзитивно зависит от каждого возможного ключа. Другими словами, отношение находится в 3НФ, если оно находится во 2НФ и отсутствуют зависимости между неключевыми атрибутами.
Нарушения 3НФ:
КОНСУЛЬТАЦИИ (№Преп, №ЗачКн, Дата, Время, Ауд, Вместимость) (№Преп, №ЗачКн, Дата) → Ауд →Вместимость ГРСПЕЦ (НомСтуд, Группа, Спец)
НомСтуд → Группа → Спец
Для приведения отношения в 3НФ необходимо поместить транзитивнозависимый атрибут в новое отношение вместе с копией того атрибута, от которого он зависит
Пример:
КОНСУЛЬТАЦИИ (№Преп, №ЗачКн, Дата, Время, Ауд, Вместимость) Приведение отношений в 3НФ:
КОНСУЛЬТАЦИИ (№Преп, №ЗачКн, Дата, Время, Ауд)
АУДИТОРИЯ (Ауд, Вместимость)
ГРСПЕЦ (НомСтуд, Группа, Спец)
СТУДГР (НомСтуд, Группа) ГРСПЕЦ (Группа, Спец)
5. Отношение находится в НФ Бойса-Кодда, если…Пример нарушения НФБК. Для приведения отношения в НФБК необходимо…Пример.
Отношение находится в нормальной форме Бойса-Кодда (НФБК) тогда и только тогда, когда детерминанты всех функциональных зависимостей являются потенциальными ключами.
Номер |
|
Наименование |
Услуга (Услуга) |
Количество |
телефонного |
узла |
(Имя) |
|
абонентов (Кол) |
(Нузла) |
|
|
|
|
|
|
|
|
|
10 |
|
Краснопресненский |
Межгород |
10000 |
|
|
|
|
|
20 |
|
Таганский |
Новые |
15000 |
|
|
|
подключения |
|
|
|
|
|
|
30 |
|
Южный |
Новые |
20000 |
|
|
|
подключения |
|
|
|
|
|
|
10 |
|
Краснопресненский |
Техобслуживание |
40000 |
|
|
|
|
|
В отношении ТелефУзел наблюдается нарушение НФБК: имеются зависимости Нузла
Имя и Имя
Нузла
детерминанты которых не являются потенциальными ключами.
Для приведения отношения в НФБК необходимо переместить в новое отношение зависимую часть вместе с копией детерминанта Пример:
ПОСТАВКА (№Постав, ИмяПостав, №Товара, КолТовара)
ПОСТАВКА (№Постав, №Товара, КолТовара) ПОСТАВЩИК (№Постав, ИмяПостав)
6. К-сторонние связи (тернарные связи). Пример. Правило построения К- сторонней связи. Пример.
Тернарные связи, или К-сторонние связи, или связи высокого порядка разрешаются похожим образом, как и связи многие-ко-многим. В связи М-М
участвуют только 2 таблицы сущностей, а в многосторонних - более 2-х. Т.е. просто создается промежуточная таблица, содержащая первичные ключи всех сущностей и код признака связи.
Связь отражает факт заключения контракта между киностудией и актером, обязующимся принять участие в съемках конкретного фильма.
Такую связь можно представить в виде множества кортежей, компонентами которых являются сущности из множеств, соединяемых этой связью.
Для представления К-сторонней связи всегда требуется К+1 отношение. Например, в случае трехсторонней связи необходимо использовать четыре отношения, по одному для каждой сущности (причем ключ сущности служит первичным ключом соответствующего отношения), и одно для связи. Отношение, порождаемой для связи, будет иметь среди своих атрибутов ключи от каждой сущности.