Существует 2 способа проектирования базы или построения реляционных отношений:
1 способ: На основе анализа инфологического моделирования и использования свойств объектов строится реляционное отношение.
2 способ: Построение нормальных форм посредством нормализации.
Правила построения
1)Для каждого простого объекта и его единичных свойств, строится отношение, атрибутами которого являются все единичные свойства и одно является идентификатором объекта.
2)Если у объекта есть множественное свойство, то каждому такому свойству строится отдельное реляционное отношение. Ключом отношения будет идентификатор объекта.
3) Если между объектом и его свойством есть условная связь, то существует 2 варианта хранения такой информации:
· Когда многие экземпляры объекта обладают этим свойством, тогда всё можно хранить все в одном отношении. Т.е. условная связь будет считаться единичной (телефон мобильный - условно):
RО3
Свойство 1 (Идентификатор объекта)
Свойство 2
Св-во 3
У
Св-во 4
RO3 (ИО, Св-во1, Св-во2 … Св-во 4)
· Когда условная связь присуща малому количеству экземпляров (строка, запись) объекта (телефон рабочий у студента):
Рис тот же
RO31 (ИО, Св-во1, Св-во2, Св-во 3)
RO32 (ИО, Св-во 4)
4)Динамические свойства в предметных областях типа склады, магазины эффективно хранить в отдельном реляционном отношении (аналог 32).
· связь 1 к 1 и обязательная только у одного из объектов (у второго объекта):
RО 5_1
RО 5_2
1 : 1
Св-во 1(ИО5_1)
Св-во 2_5_1
ИО 5_2
Св-во 2_5_2
Св-во 3
RO 5_1 (ИО 5_1, Св-во2_5_1)
RO 5_2 (ИО 5_2, Св-во2_5_2, Св-во 3, ИО 5_1)
· связь необязательная:
RО 5_1
RО 5_2
1 : 1
Св-во 1(ИО5_1)
Св-во 2_5_1
ИО 5_2
Св-во 2_5_2
Св-во 3
RO 5_1 (ИО 5_1, Св-во2_5_1)
RO 5_2 (ИО 5_2, Св-во2_5_2, Св-во 3, ИО 5_1)
RO 5_3 (ИО 5_1, ИО 5_2)
По предметной области принимаются бизнес-правила и уточняются связи и обязательность связей.
6)Связь 1 ко многим существуют 2 правила:
· когда связь между одним объектом обязательна, а между вторым нет.
RО 6_1
RО 6_2
1 : М
Св-во 1(ИО6_1)
Св-во 2_6_1
ИО 6_2
Св-во 2_6_2
Св-во 3
RO 6_1 (ИО 6_1, Св-во2_6_1)
RO 6_2 (ИО 6_2, Св-во2_6_2, Св-во 3, ИО 6_1)
· связь 1 ко многим и необязательная
RО 6_1
RО 6_2
1 : М
Св-во 1(ИО6_1)
Св-во 2_6_1
ИО 6_2
Св-во 2_6_2
Св-во 3
RO 6_1 (ИО 6_1, Св-во2_6_1)
RO 6_2 (ИО 6_2, Св-во2_6_2, Св-во 3)
RO 6_3 (ИО 6_1, ИО 6_2)
7)Связь многие ко многим (всегда необязателен)
RО 7_1
RО 7_2
1 : М
Св-во 1(ИО7_1)
Св-во 2_7_1
ИО 7_2
Св-во 2_7_2
Св-во 3
RO 7_1 (ИО 7_1, Св-во2_7_1)
RO 7_2 (ИО 7_2, Св-во2_7_2, Св-во 3)
RO 7_3 (ИО 7_1, ИО 7_2)
8)Агрегированные объекты. Каждому агрегированному объекту в реляционной модели ставится в соответствие одно отношение, атрибутами которого являются идентификаторы простых объектов, определяющих агрегированные, плюс собственные атрибуты агрегированного объекта.
RО 8_1
RО 8_2
RО 8_3
Действие RO8_4
ИО8_1
ИО8_2
ИО8_3
Св-во 1
Св-во 2
…
Действие RO8_5
Св-во N
Св-во N+1
RO 8_4 (ИО 8_1, ИО 8_2, ИО 8_3 Св-во1, Св-во2)
В одной предметной области может быть n кол-во агрегированных объектов и агрегированные объекты между собой не взаимодействуют. Тогда:
RO 8_4 (ИО 8_1, ИО 8_2, ИО 8_3 Св-во1, Св-во2)
RO 8_5 (ИО 8_1, ИО 8_2, ИО 8_3 Св-воN, Св-воN+1)
9)Обобщённый объект
9.1
RО 9
Св-во 2
Св-во 3
ИО 9
Св-во 1
Св-во 4
Св-во 5
RO 9_1 (ИО9, Св-во1, св-во 2, св-во 3)
RO 9_2 (ИО9, Св-во1, св-во 4, св-во 5)
9.2 (лучше с точки зрения хранения и отсутствия избыточности)
RO 9_3 (ИО9, Св-во 1)
RO 9_4 (ИО9, Св-во 2, Св-во 3)
RO 9_5 (ИО9, Св-во 4, Св-во 5)
9.3
RO 9_6 (ИО9, Св-во 1, Св-во 2… Св-во 5)
При проектировании ER-моделей используются СASE-технологии (CASE-системы), которые позволяют спроектировать предметную область, построить таблицы Desing/IDEF, CASE ORACLE (Designer), WORKBENCH, BPwin и ERwin.