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