Similar presentations:
Логическое проектирование реляционной базы данных. Лекция 8
1. Лекция 8
ЛЕКЦИЯ 8ЛОГИЧЕСКОЕ ПРОЕКТИРОВАНИЕ
РЕЛЯЦИОННОЙ БАЗЫ ДАННЫХ
1) Основные концепции.
2) Упрощение концептуальной модели
данных.
3) Методика преобразования концептуальных
структур данных в реляционные структуры.
4) Преобразование связи типа
«суперкласс/подкласс».
5) Преобразование составных
объектов.
2. Основные концепции
ОСНОВНЫЕ КОНЦЕПЦИИФаза
логического
проектирования
предполагает
следующие действия:
✕ преобразование концептуальной модели данных в
логическую модель, в результате которого будет
определена схема реляционной модели данных;
✕ проверка
модели
с
помощью
концепций
последовательной нормализации;
✕ проверка
модели
в
отношении
транзакций
пользователей;
3. Упрощение концептуальной модели данных
УПРОЩЕНИЕ КОНЦЕПТУАЛЬНОЙ МОДЕЛИ ДАННЫХПреобразование концептуальной модели
данных в логическую модель, в результате
которого будет определена схема реляционной
модели данных, может иметь два подхода.
4.
1) Проектировщик работает с концептуальноймоделью напрямую, не прибегая к ее
предварительному преобразованию. В этом
случае
ему
придется
столкнуться
с
необходимостью преобразования разнообразных
структур данных
5.
2) Проектировщик, прежде чем приступить к процессуперехода от концептуальной модели к логической
модели,
стремится
вначале
данный
переход
максимально упростить, проведя предварительные
преобразования
концептуальной
модели,
преобразования некоторых ее, не подходящие для
реляционных СУБД структур данных.
6.
К таким структурам данных относятся:✕ связи типа «многие ко многим»;
✕ сложные связи;
✕ рекурсивные связи;
✕ связи с атрибутами;
✕ множественные атрибуты;
✕ избыточные связи.
Если в модели присутствуют перечисленные нежелательные
структуры, то они должны быть исключены путем тождественной их
замены на структуры данных, допустимые для логической модели.
7. Исключение связи типа «многие ко многим»
ИСКЛЮЧЕНИЕ СВЯЗИ ТИПА«МНОГИЕ КО МНОГИМ»
Преобразование связи типа «многие ко многим»
осуществляется
путем
введения
некоторого
промежуточного объекта с заменой одной связи двумя
связями типа «один ко многим» с вновь созданным
объектом. При организации новых связей необходимо
следить за тем, чтобы максимальная мощность связи
«один» была направлена к исходному объекту, а
максимальная мощность связи «много» — к вновь
созданному объекту.
8.
преподавательN
читает
M
курс
9.
преподавателькурс
1
1
пр_читает
N
читает
N
к_читаетc
я
ПР_ЧИТАЕТ типа 1: N между объектами ПРЕПОДАВАТЕЛЬ
и ЧТЕНИЕ;
К_ЧИТАЕТСЯ типа 1: N между объектами КУРС и ЧТЕНИЕ.
10.
ИСКЛЮЧЕНИЕ СЛОЖНЫХ СВЯЗЕЙпреподаватель
M
ведет
M
лаборатория
M
занятия
11.
преподавательзанятия
1
пр_ведет
1
N
лаб_занятие
N
проходят
1
лаборатория
N
ведутся
12. Исключение рекурсивных связей
ИСКЛЮЧЕНИЕ РЕКУРСИВНЫХ СВЯЗЕЙработает
M
1
сотрудник
13.
1роль_сотрудника
1
руководит
работает
1
M
сотрудник
14. Преобразование объектов и атрибутов
ПРЕОБРАЗОВАНИЕ ОБЪЕКТОВ ИАТРИБУТОВ
Общий подход к преобразованию объектов
концептуальной модели ПрО в отношения
реляционной базы данных состоит в следующем:
✕ построить набор предварительных отношений
и указать первичные ключи для каждого
отношения;
15.
✕ подготовить список всех представляющих интересатрибутов (тех из них, которые не были
перечислены в диаграмме в качестве первичных
ключей объектов) и назначить каждый из этих
атрибутов одному из предварительных отношений с
тем условием, чтобы эти отношения находились в
НФБК. Если полученные отношения в итоге не
находятся в НФБК, то в этих случаях диаграммы
необходимо пересмотреть.
16. Преобразование связи типа суперкласс/подкласс
ПРЕОБРАЗОВАНИЕ СВЯЗИ ТИПАСУПЕРКЛАСС/ПОДКЛАСС
Для каждой присутствующей в логической модели
данных связи типа «суперкласс/подкласс» объект
суперкласса
необходимо
определить
как
родительский, а объект подкласса — как дочерний.
Если
суперкласс с его подклассами имеет
непересекающиеся связи, где каждый экземпляр
суперкласса обязательно должен быть членом одного
подкласса, то решением является представление
каждого из подклассов в виде отдельного отношения,
содержащего копию первичного ключа суперкласса.
17.
преподавательстарший
преподаватель
профессор
доцент
ассистент
18.
Подобная диаграмма преобразуется в следующуюреляционную схему отношений:
ПРЕПОДАВАТЕЛЬ (Табельный номер, ФИО, Адрес,
Педагог_стаж);
ПРОФЕССОР
(Табельный
номер,
Номер_диплома_профессора);
ДОЦЕНТ (Табельный номер, Номер_диплома_доцента);
СТАРШИЙ_ПРЕПОДАВАТЕЛЬ (Табельный номер);
АССИСТЕНТ (Табельный номер).
19. Преобразование составных объектов
ПРЕОБРАЗОВАНИЕ СОСТАВНЫХкол_часов
ОБЪЕКТОВ
должность
час_оплата
таб_номер
ФИО
специалист
название
выполняет
НИР
руководитель
вид_работы
характеристика
код_вида
индекс_НИР
20.
Конечный результат преобразования выглядиттак:
СПЕЦИАЛИСТ
(Таб_номер,
Ф_И_О,
Должность);
ВИД_РАБОТЫ (Код_вида, Характеристика);
НИР (Индекс_Нир, Название, Руководитель);
ПО (Таб_номер, Код_вида, Индекс_Нир,
Час_оплата, Кол_часов).