Основы проектирования реляционных баз данных
Исходное отношение:
Преподаватель_предмет (Личный_#, Предмет, Часы, Фамилия, Должность, Оклад, Кафедра, Телефон )
Результирующие отношения:
Преподаватель (Личный_#, Фамилия, Должность, Оклад, Кафедра, Телефон )
Предмет(Личный_#, Предмет, Часы )
Комментарий к ответу: Отношение Преподаватель_Предмет содержит частичные ФЗ: пять последних неключевых атрибутов зависят от части ключа Личный_#. Это может привести к следующим аномалиям:
Устранение аномалий заключается в выполнении двух проекций отношения.
Преподаватель (Личный_#, Фамилия, Должность, Оклад, Кафедра, Телефон )
Результирующие отношения:
Преподаватель(Личный_#, Фамилия, Должность, Кафедра)
Должность (Должность, Оклад)
Кафедра (Кафедра, Телефон)
Комментарий к ответу: Отношение Преподаватель содержит транзитивные зависимости: и . Это может привести к следующим аномалиям:
Устранение аномалий заключается в выполнении трех проекций отношения.
Исходное отношение:
Преподаватель (Фамилия, Группа, Предмет )
Результирующие отношения:
Преподаватель_группа (Фамилия, Группа )
Преподаватель_предмет (Фамилия, Предмет )
Комментарий к ответу: Отношение Преподаватель содержит две многозначные ФЗ: и . Это приводит к аномалии включения: если у преподавателя появляется новая группа, в отношение приходится добавлять несколько кортежей (по числу читаемых им предметов). Устранение аномалии заключается в выделении МФЗ в отдельное отношение
Понятие | Определение | ||
---|---|---|---|
1 | Ключ отношения | A | это уникальное значение атрибута или атрибутов в кортеже, позволяющее идентифицировать сущность или часть сущности предметной области |
2 | Возможный ключ отношения | B | это атрибут составного ключа, однозначно определяющий совокупность неключевых атрибутов отношения |
3 | Первичный ключ отношения | C | это первичный ключ отношения, содержащий несколько атрибутов |
4 | Составной ключ отношения | D | это значение атрибута или атрибутов, позволяющее однозначно идентифицировать кортеж |
5 | Частичный ключ отношения | E | это значение атрибута или атрибутов отношения, которые являются кандидатами на ключ отношения |
6 | Атомарный ключ отношения | F | это первичный ключ отношения, содержащий один атрибут |
7 | Внешний (посторонний) ключ отношения | G | это атрибут кортежа, который является первичным ключом другого отношения |
Операция | Результат выполнения | ||
---|---|---|---|
1 | Объединение отношений | A | Отношение С, которое включает в себя все кортежи со всеми атрибутами исходных отношений А и В, удовлетворяющими заданному условию |
2 | Пересечение отношений | B | Отношение С, которое включает в себя кортежи отношения А, отличные от кортежей отношения В |
3 | Разность отношений | C | Отношение С, которое включает в себя кортежи отношения А, полностью совпадающие с кортежами отношения В |
4 | Декартово произведение отношений | D | Отношение С, которое включает в себя атрибуты отношения А, отличные от атрибутов отношения В, и только те кортежи, декартовы произведения которых с отношением В дают отношение А |
5 | Проекция отношения | E | Отношение С, которое включает в себя все кортежи отношения А, но только с теми атрибутами, на которые выполняется проекция |
6 | Деление отношений | F | Отношение С, степень которого равна сумме степеней исходных отношений, а мощность — произведению возможностей исходных отношений |
7 | Выбор (селекция) из отношения | G | Отношение С, которое включает в себя кортежи отношения А, удовлетворяющие заданному условию (критерию выбора) |
8 | Соединение отношений А | H | Отношение C, которое включает в себя все кортежи отношения А и кортежи отношения B, отличные от кортежей отношения A |
Алгоритм
Исходное отношение:
Курсовой_проект (Преподаватель, Проект, Студент)
Иванов Тема1 Петрова
Фролов Тема1 Исаев
Антонов Тема1 Сидоров
Иванов Тема2 Ивлева
Фролов Тема2 Степанов
Фролов Тема3 Мусин
Антонов Тема3 Сац
Результирующие отношения:
Руководство (Преподаватель, Предмет)
Выполнение (Студент, Предмет)
Комментарий к ответу: На роль ключа отношения Курсовой_проект претендует набор атрибутов {Преподаватель, Предмет}. Студент выполняет только один проект, один и тот же проект может выполняться несколькими студентами у разных преподавателей. Отношение содержит следующие ФЗ: и .
Отношение находится в 3НФ и не содержит частичных и транзитивных ФЗ. Однако наличие ФЗ части составного ключа от неключевого атрибута может привести к следующим аномалиям:
Устранение аномалий заключается в удалении ФЗ ключа от неключевого атрибута.
Алгоритм
Повторение пунктов 2 и 3 для каждого нового отношения, полученного в результате декомпозиции.