- •1. Базовые определения и соглашения
- •1.1. Определение и описание сущности
- •1.2. Определение и описание связи
- •1.3. Действительные и недействительные связи
- •1.4. Атрибуты
- •1.5. Уникальный (ключевой) идентификатор
- •1.6. Правила оформления er-диаграммы
- •1.7. Резюме
- •2. Дополнительные определения и соглашения
- •2.1. Подтипы сущностей
- •2. Дополнительные определения и соглашения 25
- •2. Дополнительные определения и соглашения 27
- •2.2. Дополнительные соглашения для сущностей
- •2. Дополнительные определения и соглашения 29
- •2.3. Исключающая дуга
- •2. Дополнительные определения и соглашения 31
- •2. Дополнительные определения и соглашения 33
- •2.4. Дополнительные соглашения для связей
- •2. Дополнительные определения и соглашения 35
- •2.5. Домены
- •2. Дополнительные определения и соглашения 37
- •2.6. Резюме
- •3. Классические структуры и общие образцы
- •3.1. Классические иерархические структуры
- •3. Классические структуры и общие образцы 39
- •3. Классические структуры и общие образцы 41
- •3. Классические структуры и общие образцы 43
- •3. Классические структуры и общие образцы 45
- •3.2. Сетевые структуры
- •3. Классические структуры и общие образцы 47
- •3.3. Изменения во времени
- •3. Классические структуры и общие образцы 49
- •3.4. Накладная на материалы
- •3. Классические структуры и общие образцы 51
- •3.5. Классификации и категории
- •3. Классические структуры и общие образцы 53
- •3.6. Типы сущности
- •3. Классические структуры и общие образцы 55
- •3.7. Общая модель для Заказов
- •3. Классические структуры и общие образцы 57
- •3.8. Общая модель для ролей и работ
- •3. Классические структуры и общие образцы 59
- •3.9. Продукция
- •3. Классические структуры и общие образцы 61
- •3. Классические структуры и общие образцы 63
- •3. Классические структуры и общие образцы 65
- •4. Нормализация данных 67
- •4. Нормализация данных
- •4. Нормализация данных 69
- •4. Нормализация данных 71
- •5. Оценка качества модели "Сущность-Связь" 73
- •5.1. Качество er-модели в конце этапа стратегии
- •5. Оценка качества модели "Сущность-Связь" 75
- •5. Оценка качества модели "Сущность-Связь" 77
- •5.2. Качество er-модели в конце этапа анализа
- •5. Оценка качества модели "Сущность-Связь" 79
- •5. Оценка качества модели "Сущность-Связь" 81
3. Классические структуры и общие образцы 45
─────────────────────────────────────────────────────────────────
Теперь модель может быть использована как для обычных ситуа-
ций (центральная часть модели), так и для сложных, но редких слу-
чаев.
3.2. Сетевые структуры
Сетевая стуктура является очень обычной (часто встречаемой)
для ER-диаграммы. Пример сетевой структуры показан на рис.3.9.
┌───────────┐ ┌───────────┐ ┐ ┌───────────┐
│ ├┐ │ ├┐│ │ │
│ ├┼─── ─ ─ ┤ B ├┼o─── ─ ─ ┤ │
│ ├┘ │ ├┘│ │ │
│ │ └────┬┬┬────┘ │ │ │
│ │ └┼┘ │ │ │
│ A │ └─o───────┘ │ D │
│ │ │ │ │
│ │ │ │
│ │ │ │ │
│ │ ┌───────────┐ │ │
│ ├┐ │ ├┐ │ │
│ ├┼─── ─ ─ ┤ C ├┼──── ─ ─ ┤ │
│ ├┘ │ ├┘ │ │
└────┬┬┬────┘ └───────────┘ └────┬┬┬────┘
└┼┘ └┼┘
│ │
│ │
┌────────────────────────────────────────────────────────┐
│ │
│ E │
│ │
└────────────────────────────────────────────────────────┘
Рис.3.9. Сетевая структура
Эта структура отражает множество иерархических отношений:
- E/D/B/A;
- E/D/C/A;
- E/D/C/B/A;
- E/A.
Каждое из этих отношений дает возможность установить взаимо-
отношения между сущностями E и A в сложной сети так, что можно
следовать по любому из путей, выбирая и показывая экземпляры этих
сущностей. Ниже приведен алгоритм, реализующий следующую задачу:
для каждого E найти все прямо связанные с ним A, затем для каждо-
го такого A найти связанные с ним экземпляр сущности C и соот-
Информационно-логическое моделирование.
46 Модель "Сущность-Связь"
─────────────────────────────────────────────────────────────────
ветствующие экземпляры D и E.
Шаг 1 выбрать E;
Шаг 2 выбрать все экземпляры A, прямо соединенные с E;
Шаг 3 для каждого A выбрать ассоциируемый с ним экз. C,
затем выбрать ассоциируемый с C экз. D
и выбрать ассоциируемый с D экз. E.
(С этой точки можно выполнять рестарт с шага 1.)
Другой вариант:
Шаг 4 для каждого A выбрать ассоциируемый c ним экз. B,
для которого или выбрать
ассоциируемый с B экземпляр D,
затем выбрать ассоциируемый с D экз.E
(точка рестарта)
Шаг 5 или выбрать
ассоциируемый с B экземпляр C,
затем ассоциируемый с C экз. D
и, наконец, ассоциируемый с D зкз. E
( точка рестарта).
На рис.3.10 показан пример сетевой структуры.
иметь в
┌─────────────────────┐настоящее время ┌───────────────────┐
│ ОРГАНИЗАЦИОННАЯ ├┐руководителем │ │
│ ЕДИНИЦА ├┼────────── ─ ─ ─ ─ ┤ │
│ ├┘ руководить│ │
│ ┌───────────────┐ в│настоящее │ СЛУЖАЩИЙ/ │
│ │ ├┐время входить в │ РАБОТАЮЩИЙ │
│ │ ПОДРАЗДЕЛЕНИЕ ├┼─┼──────────┐ │ │
│ │ ├┘ │ │ │
│ └───────────────┘ ├ ─ ─ ─ ─ ─┘ │ │
│ │в настоящее вре- │ │
│ │мя состоять из │ │
│ ┌───────────────┐ │ │ │
│ │ │ │тек. место │ │
│ │ ПРЕДПРИЯТИЕ │ │работы для ┌┤ │
│ │ │ ├─ ─ ─ ─ ─ ─────────┼┤ │
│ └───────────────┘ │ работать └┤ │
└─────────────────────┘ в └───────────────────┘
Рис.3.10 Пример сетевой структуры
В этом примере можно начать выборку данных с какого-либо
служащего и найти организационную единицу, в которой этот служа-
