Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
SybasePD.pdf
Скачиваний:
224
Добавлен:
15.04.2015
Размер:
735.77 Кб
Скачать

16

Рисунок 16 – Изображение концептуальной модели данных

На этом концептуальное проектирование можно считать законченным.

Создание логической модели

Сгенерируем логическую модель по имеющейся концептуальной модели, выполнив пункт главного меню Tools–Generate Logical Data Model. В открывшемся окне (рисунок 17) выберем радио-кнопку

Generate New Logical Data Model и нажмем кнопку Configure Model Options (настроить свойства модели).

Далее выберем тип нотации Entity/Relationship и запретим отображение связей многие ко многим, убрав флажок Allow n-n relationships (рисунок 18).

Затем в этом же окне перейдем к пункту Migration Settings (настройки миграции) и зададим правило создания имен внешних ключей. В поле Foreign attribute name (рисунок 19) укажем шаблон, по которому будет формироваться имя атрибута внешнего ключа. Неплохим решением, на наш взгляд, является использование в качестве такового имени главной (родительской) сущности. Для этого следует указать переменную %PARENT%. Также велим всегда использовать этот шаблон, выбрав радио-кнопку Always use template. Нажмем ОК.

17

Рисунок 17 – Генерация LDM

Рисунок 18 – Настройка свойств LDM

18

Рисунок 19 – Настройка свойств миграции

Далее в окне LDM Generation Options перейдем на вкладку Detail

иубедимся, что установлен флажок Check Model (проверка модели на наличие ошибок).

Впроцессе генерации могут возникнуть ошибки, указывающие на то, что дочерние сущности (Выпускающая кафедра и Общая кафедра) не содержат ключей. Следует удалить эти ошибки из общего списка и повторить генерацию. Второй раз эти ошибки не возникнут.

Зададим особенности отображения LDM, зайдя в пункт главного меню Tools–Display Preferences (настройки отображения). Выберем категорию Content–Relationship (связи), установим флажок Cardinality

иуберем флажок Name (имя связи).

Вкатегории Content–Entity (сущности) уберем флажок Identifiers (рисунок 20), чтобы не отображались идентификаторы сущностей. Зададим отображение всех атрибутов (Attributes–All attributes). Зададим отображение признака обязательности атрибута (Mandatory) и признаков первичных и внешних ключей (Identifier indicators).

19

Рисунок 20 – Настройка отображения LDM

Дополним сущности необходимыми неключевыеми атрибутами, задав для каждого из них имя, имя в коде, тип данных и признак обязательности. Обратим внимание, что для всех сущностей уже автоматически заданы необходимые первичные и внешние ключи.

При необходимости можно дополнить модель новыми сущностями. Так, для преподавателя нужно задать должность, на которой он работает. Для этого есть смысл создать сущность Должность. Для занятия нужно указать день недели, для которого можно создать сущность День недели. Сущности и связи создаются и настраиваются так же, как и в CDM.

Можно задавать для сущностей альтернативные ключи (АК), которые в дальнейшем (в PDM) будут реализованы ограничениями уникальности (CONSTRAINT…UNIQUE). Пусть требуется создать АК по атрибуту Полное название сущности Кафедра. Для этого следует вызвать окно свойств сущности, зайти на вкладку Identifiers и задать новый АК, указав его имя (Name) и имя в коде (Code), в нашем случае

Полное название и NameFull. Затем надо в этом же окне зайти в свойства АК, нажав ALT+Enter. В новом окне на вкладке Attributes нужно будет добавить в состав АК атрибут Полное название.

Аналогично зададим следующие ограничения уникальности:

для сущности Факультет по атрибуту Полное название;

20

для сущности Специальность по атрибуту Название;

для сущности Должность по атрибуту Название.

Для атрибутов сущностей можно задавать значения по умолчанию и правила проверки, которые в PDM будут реализованы ограничениями умолчания (CONSTRAINT…DEFAULT) и проверки

(CONSTRAINT…CHECK).

Зададим для атрибута Группа.Студентов значение по умолчанию 20 и минимальное значение 0 (имеется в виду, сколько в группе студентов). Для этого вызовем окно свойств сущности Группа, зайдем на вкладку Attributes, выберем атрибут Студентов и нажмем ALT+Enter. В открывшемся окне перейдем на вкладку Standart Checks, и зададим требуемые ограничения (рисунок 21).

Рисунок 21 – Задание умолчания и диапазона значений

Следует помнить, что не каждая СУБД поддерживает ограничения уникальности, умолчания и проверки (MS SQL Server поддерживает).

На рисунке 22 показана диаграмма логической модели данных, полученной для нашего примера.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]