
- •Т.Е.Ильиных л.И.Шустова проектирование реляционных баз данных в нотациях idef1x
- •Содержание
- •Этапы проектирования базы данных
- •Инфологическое проектирование базы данных
- •Общие сведения
- •Описание бизнес компонентов и бизнес процессов
- •Сущность
- •Атрибут
- •Другие компоненты инфологической модели
- •Уровни представления данных
- •Этапы инфологического проектирования Инициирование проекта (фаза 0)
- •Определение сущностей (фаза 1)
- •Построение модели уровня сущностей (фаза 2)
- •Построение модели уровня ключей (фаза 3)
- •Построение полноатрибутной модели (фаза 4)
- •Нормализация данных
- •Даталогическое проектирование базы данных
- •Создание даталогической модели Общие сведения
- •Получение спецификаций внутренней схемы базы данных
- •Ограничения целостности
- •Результаты этапа даталогического проектирования
- •Имя таблицы
- •Основы нормализации отношений Общие сведения
- •Первая нормальная форма
- •Вторая нормальная форма
- •Третья нормальная форма
- •Нормальная форма Бойса – Кодда
- •Четвертая нормальная форма
- •Пятая нормальная форма
- •Денормализация
- •Примеры проектирования баз данных различных бизнес приложений
- •Общие замечания
- •Проектирование базы данных "Школа" Постановка задачи
- •Инициирование проекта (фаза 0)
- •Определение множеств сущностей (фаза 1) Выделение множеств сущностей
- •Описание множеств сущностей
- •Пул сущностей
- •Построение модели уровня сущностей (фаза 2)
- •Концептуальная схема уровня сущностей
- •Построение модели уровня ключей (фаза 3) Разрешение неопределенных связей
- •Пул сущностей
- •Определение связей
- •Определение ключевых атрибутов и доменов
- •Изучаемый предмет/e5
- •Описание доменов
- •Описание атрибутов
- •Концептуальная схема
- •Построение полноатрибутной модели (фаза 4)
- •Описание доменов
- •Описание атрибутов
- •Явные ограничения целостности
- •Даталогическая модель
- •Проектирование базы данных "Обмен валюты" Постановка задачи
- •Инициирование проекта (фаза 0)
- •Определение множеств сущностей (фаза 1) Выделение множеств сущностей
- •Описание множеств сущностей
- •Пул сущностей
- •Фаза 2. Построение модели уровня сущностей Матрица связей
- •Матрица связей
- •Описание связей
- •Описание связей
- •Концептуальная схема уровня сущностей
- •Построение модели уровня ключей (фаза 3) Разрешение неопределенных связей
- •Пул сущностей
- •Определение связей
- •Определение ключевых атрибутов и доменов
- •Описание доменов
- •Описание атрибутов
- •Концептуальная схема
- •Построение полноатрибутной модели (фаза 4)
- •Описание доменов
- •Описание атрибутов
- •Явные ограничения целостности
- •Даталогическая модель
- •Проектирование базы данных "Торговля" Постановка задачи
- •Инициирование проекта (фаза 0)
- •Определение множеств сущностей (фаза 1) Выделение множеств сущностей
- •Описание множеств сущностей
- •Пул сущностей
- •Построение модели уровня сущностей (фаза 2)
- •Концептуальная схема уровня сущностей
- •Построение модели уровня ключей (фаза 3) Разрешение неопределенных связей
- •Пул сущностей
- •Описание связей
- •Определение ключевых атрибутов и доменов
- •Товар в списке цен/e5
- •Описание доменов
- •Описание атрибутов
- •Концептуальная схема
- •Построение полноатрибутной модели (фаза 4)
- •Описание доменов
- •Описание атрибутов
- •Явные ограничения целостности
- •Даталогическая модель
- •Список литературы
- •115409, Москва, Каширское ш., 31
Определение ключевых атрибутов и доменов
В рассматриваемом примере для выделенных множеств сущностей можно предложить следующие ключи и домены:
КЛИЕНТ/E1
Первичный ключ: ЛИЧНЫЙ НОМЕР КЛИЕНТА; атрибут определен на домене НОМЕР.
Альтернативный ключ: ПАСПОРТ (паспортные данные); атрибут определен на домене СИМВОЛЬНЫЙ НОМЕР.
ВАЛЮТА/E2
Первичный ключ: КОД ВАЛЮТЫ; атрибут определен на домене НОМЕР.
КУРС ВАЛЮТЫ/E3
Первичный ключ: составной ключ, содержащий два атрибута:
КОД ВАЛЮТЫ – устанавливает связь с множеством сущностей ВАЛЮТА/E2; атрибут определен на домене НОМЕР;
ДАТА; атрибут определен на домене ДАТА.
ОПЕРАЦИЯ/E4
Первичный ключ: НОМЕР ОПЕРАЦИИ; атрибут определен на домене НОМЕР.
Внешние ключи:
КОД ВАЛЮТЫ – устанавливает связь с множеством сущностей ВАЛЮТА/E2; атрибут определен на домене НОМЕР;
ЛИЧНЫЙ НОМЕР – устанавливает связь с множеством сущностей КЛИЕНТ/E1; атрибут определен на домене НОМЕР.
ПОКУПКА/E5
Первичный (он же внешний) ключ: НОМЕР ОПЕРАЦИИ – устанавливает связь с множеством сущностей ОПЕРАЦИЯ/E4; атрибут определен на домене НОМЕР.
ПРОДАЖА/E6
Первичный (он же внешний) ключ: НОМЕР ОПЕРАЦИИ – устанавливает связь с множеством сущностей ОПЕРАЦИЯ/E4; атрибут определен на домене НОМЕР.
Описания доменов и ключевых атрибутов приведены в табл. 4.21 и 4.22.
Таблица 4.21
Описание доменов
Имя домена |
Имя общего домена |
Описание домена |
Строка |
|
Множество всех символьных строк |
Число |
|
Множество всех чисел |
Дата |
|
Множество всех дат |
Номер |
Число |
Множество натуральных чисел |
Символьный номер |
Строка |
Множество символьных строк длиной не более 40 символов |
Таблица 4.22
Описание атрибутов
Множество сущностей |
Имя атрибута |
Имя домена |
Признак обязательности |
Примечание |
Клиент/E1 |
Личный номер |
Номер |
Not null |
PK |
Паспорт |
Символьный номер |
Not null |
AK1 | |
Валюта/E2 |
Код валюты |
Номер |
Not null |
PK |
Курс валюты/E3 |
Код валюты |
Номер |
Not null |
PK.1; FK1 |
Дата |
Дата |
Not null |
PK.2 |
Продолжение табл. 4.22
Множество сущностей |
Имя атрибута |
Имя домена |
Признак обязательности |
Примечание |
Операция/E4 |
Номер операции |
Номер |
Not null |
PK |
Код валюты |
Номер |
Not null |
FK1 | |
Личный номер |
Номер |
Not null |
FK2 | |
Покупка/E5 |
Номер операции |
Номер |
Not null |
PK; FK |
Продажа/E6 |
Номер операции |
Номер |
Not null |
PK; FK |
Концептуальная схема
По результатам определения первичных ключей строится концептуальная схема уровня ключей (рис. 4.5).
Рис. 4.5. Концептуальная схема уровня ключей