
- •Финансовый университет при правительстве российской федерации
- •Ббк 32.973.202я73
- •Занятие № 1. Знакомство с case-средством eRwin
- •1. Использование eRwin для составления моделей бд
- •1.1. Область применения
- •1.2. Уровни представления и отображение модели данных
- •1.3. Документирование модели
- •1.4. Масштабирование модели
- •1.5. Этапы построения информационной модели
- •2. Подключение учебного примера
- •2.1. Запуск eRwin
- •2.2. Отключение ModelMart
- •2.3. Подключение файла учебной модели
- •3. Инструментарий eRwin
- •3.1. Окно модели
- •3.2. Панели инструментов
- •3.3. Панель инструментов Стандартная
- •4. Методология idef1x
- •4. 1. Логические модели
- •4.2. Физические модели
- •5. Логический и физический уровни модели данных
- •6. Переключение нотаций
- •7. Режимы отображения модели
- •8. Задания
- •9. Контрольные вопросы
- •Занятие № 2. Создание логической модели простой базы данных
- •Создать логическую модель простой базы данных:
- •1. Предварительная подготовка
- •2. Логическое моделирование
- •3. Erd-диаграммы
- •4. Режимы отображения модели
- •5. Порядок выполнения работы
- •5.1. Создание модели
- •5.2. Создание сущностей Сущности (Entity) в eRwin
- •4.3. Определение атрибутов сущностей Атрибуты (Attribute) в eRwin
- •4.4. Создание первичных ключей Ключи в eRwin
- •4.5. Создание логических связей Связи в eRwin
- •4.6. Создание внешних ключей Внешние ключи в eRwin
- •4.7. Задание типа данных для атрибутов Типы данных атрибутов
- •5. Задания
- •5. Контрольные вопросы
- •Занятие № 3. Создание логической модели сложной базы данных
- •Создать логичекую модель сложнойбазы данных:
- •1. Порядок выполнения работы
- •2. Модели сложных бд
- •2. Выравнивание и группировка объектов
- •3. Хранимые изображения
- •Для отображения Атрибуты
- •4. Цветовое и шрифтовое оформление компонентов модели
- •5. Графическое оформление компонентов модели
- •6. Задания
- •7. Контрольные вопросы
- •Занятие № 4. Создание физической модели базы данных
- •1. Уровни физической модели
- •2. Прямое проектирование
- •3. Создание физической модели
- •4. Панели инструментов для работы с бд
- •5. Порядок выполнения работы
- •6. Задания
- •7. Контрольные вопросы
- •Занятие № 5. Построение модели данных на основе базы данных
- •1. Обратное проектирование
- •2. Порядок выполнения работы
- •Для того, чтобы продолжить нормализацию данных, приведем данные ко второй нормальной форме (2нф).
- •3. Задания
- •4. Контрольные вопросы
- •Занятие № 6. Синхронизация модели данных и базы данных
- •1. Синхронизация модели данных и базы данных
- •2. Порядок выполнения работы
- •2.1. Прямая синхронизация
- •2.2. Обратная синхронизация
- •5. Задания
- •6. Контрольные вопросы
- •Занятие № 7. Формирование отчетов
- •1. Отчеты
- •2. Порядок выполнения работы
- •2.1. Построитель шаблонов отчетов (Report Template Builder)
- •Вариант 1. Использование готовых шаблонов отчетов
- •Column Report - Physical Only Model: OtpuskTovarov2 April 04, 2008
- •Вариант 2. Создание своего шаблона отчета
- •Запуск созданного шаблона на выполнение
- •Применение созданного шаблона для другой модели
- •2.2. Генератор отчетов Data Browser
- •Запуск и инструменты генератора отчетов
- •Создание отчета
- •Генерация (выполнение) отчета
- •Редактирования отчета
- •Использование отчетов для проверки правильности построения модели
- •Экспорт отчетов
- •Атрибуты
- •Форматы экспорта
- •3. Задания
- •4. Контрольные вопросы
- •Литература
- •Словарь терминов
- •Оглавление
- •Кузнецов Лонгин Константинович программная инженерия
4.6. Создание внешних ключей Внешние ключи в eRwin
Внешние ключи (Foreign Key) создаются автоматически, когда связь соединяет сущности: связь образует ссылку на атрибуты первичного ключа в дочерней сущности, и эти атрибуты образуют внешний ключ в дочерней сущности (миграция ключа). Атрибуты внешнего ключа обозначаются символом (FK) после своего имени.
Отредактировать внешние ключи, а также создать альтернативные ключи и инверсионные входы можно в окне Key Groups (рис. 43). Вызвать диалог Key Groups можно с помошью одноименной команды контекстного меню Key Groups…, либо с помощью меню Model/ Key Groups.
В верхней части диалога Key Groups находится список ключей, в нижней – список атрибутов, доступных для включения в состав ключа (слева), и список ключевых атрибутов. Каждый вновь созданный ключ должен иметь хотя бы один атрибут. Для включения атрибута в состав ключа следует выделить его в левом списке и щелкнуть по кнопке со стрелкой .
Зависимая сущность может иметь один и тот же внешний ключ из нескольких родительских сущностей. Сущность может также получить один и тот же внешний ключ несколько раз от одного и того же родителя через несколько разных связей. Когда ERwin обнаруживает одно из этих событий, он распознает, что два атрибута одинаковы, и помещает атрибут внешнего ключа в зависимой сущности только один раз. Хотя в закладке Key Group диалога Attribute этот атрибут будет входить в два внешних ключа, на модели он показывается только один раз. Это комбинирование или объединение идентичных атрибутов называется унификацией.
Рис. 43. Вид окна Key Groups
Унификация – это объединение двух или более групп атрибутов внешних ключей в один внешний ключ (группу атрибутов), в предположении, что значения одноименных атрибутов в дочерней сущности всегда одинаковы.
Унификация производится, поскольку правила нормализации запрещают существование в одной сущности двух атрибутов с одинаковыми именами.
Когда унификация нежелательна (например, когда два атрибута имеют одинаковые имена, но на самом деле они отличаются по смыслу и необходимо, чтобы это отличие отражалось в диаграмме), нужно использовать имена ролей атрибутов внешнего ключа.
15.1. При помощи панели инструментов Стандартная перейдите в режим отображения атрибутов. При необходимости измените положение сущностей, сделав модель более наглядной.
Обратите внимание на создание чужих (внешних) ключей, помеченных символом FK (рис. 44).
15.2. Для создания внешнего ключа щелчком мыши выделите сущность Заказ.
Рис. 44. Вид модели с внешним ключом
15.3. В контекстном меню выберите опцию Key Groups…
15.4. В появившемся окне Key Groups (рис. 43) в разделе Entity выберите сущность Клиент.
15.5. Используя кнопку переместите атрибут КодКлиента из раздела Available Atributies в раздел Key Group Members.
4.7. Задание типа данных для атрибутов Типы данных атрибутов
ERwin автоматически присваивает атрибуту тип данных, установленный по умолчанию, который поддерживается физической СУБД. Тип данных, установленный по умолчанию, определяет, какой тип данных будет присвоен каждой колонке таблицы по умолчанию при создании физической схемы БД. Тип данных, задаваемый атрибуту ERwin по умолчанию, может в силу разных причин Вас не устраивать. Если Вы заранее располагаете информацией о типе данных атрибута, то Вы имеете возможность на этапе создания логической модели уточнить и скорретировать тип данных атрибута. Указанная корректировка облечит впоследствии работу с физической БД. Напомним, что указанную корректировку можно сделать и позднее на этапе работы с физической БД.
16.1. Щелкните мышью по избранной сущности, например, Заказ.
16.2. В контекстном меню выберите Attributes.
Рис. 45. Вид окна Atributies с вкладкой General
16.3. В появившемся окне Attributes перейдите на вкладку General (рис. 45) и задайте приблизительный тип данных для каждого атрибута в соответствии с табл. 4.
Таблица 4
Типы данных атрибутов
Атрибуты |
Тип |
Код клиента |
String |
Номер3аказа |
String |
ДатаЗаказа |
Datetime |
СтоимостьЗаказа |
Number |
Фирма |
String |
Адрес |
String |
Телефон |
String |
Артикул |
String |
Наименование |
String |
Цена |
Number |
16.4. В окне Attributes перейдите на вкладку Datatype (рис. 46) и уточните (скоректируйте) тип данных с учетом будущей физической БД для некоторых атрибутов в соответствии с табл. 5.
Рис. 46. Вид окна Atributies с вкладкой Datatype
Таблица 5
Скорректированные типы данных атрибутов
Атрибуты |
Тип |
Код клиента |
VARCHAR(20) |
Номер3аказа |
INTEGER |
ДатаЗаказа |
DATE |
СтоимостьЗаказа |
MONEY(,) |
Фирма |
VARCHAR(20) |
Адрес |
VARCHAR(20) |
Телефон |
VARCHAR(12) |
Артикул |
VARCHAR(20) |
Наименование |
VARCHAR(20) |
Цена |
MONEY(,) |
Примечание: операцию по выбору типов данных для будущей физической СУБД можно выполнить и непосредственно при создании физической модели (см. работу № 4).
17. Посмотрите, как меняется вид рабочего окна модели при изменении уровня отображения модели. Для этого выберите команду Display Level в меню Format и соответствующий уровень отображения: сущностей Entity (рис. 47), определений Defination (рис. 48), пиктограмм Icon (рис. 49), атрибутов Attribute (рис. 50), первичных ключей Primary Key (рис. 51).
Рис. 47. Вид модели на уровне сущностей (Entity)
Рис. 48. Вид модели на уровне определений (Defination)
Рис. 49. Вид модели на уровне пиктограмм (Icon)
Рис. 50. Вид модели на уровне атрибутов (Attribute)
Рис. 51. Вид модели на уровне первичных ключей Primary Key
17. Сохраните результаты работы.