![](/user_photo/528_5NJmi.jpg)
- •Лабораторная работа №5 по курсу субд oracle
- •Введение
- •Справочные материалы
- •Модели данных и нотации моделей в PowerDesigner
- •Знакомство с PowerDesigner
- •Создание концептуальной модели данных
- •Генерация физическоймодели данных для субдoracle
- •Генерация sql сценария базы данных
- •Проверка и запуск sql сценария на субдoracle
Знакомство с PowerDesigner
Главное окно PowerDesignerорганизовано традиционным образом:
Все элементы модели имеют связанные с ними диалоговые окна свойств, которые вызываются либо через контекстное меню Properties либо двойным щелчком по элементу модели.
При создании модели используется палитра инструментов, инструменты позволяют создавать элементы модели (сущности, связи, надписи, простые графические объекты и т.п.) и управлять их размещением в модели.
Область рабочего окна PowerDesignerразграфлена тонкими черными линиями которые обозначают границы листов бумаги, при печати модели на принтер.
Создание концептуальной модели данных
Запустить программу PowerDesigner:
Выбрать команду File\CloseWorkspace чтобы закрытьDemo Workspace (который открывается по умолчанию)
Выбрать команду File\New… Conceptual Data Model
Выбрать созданную модель (ConceptualDataModel_1) в списке элементов модели и задать имя моделиБиблиотекаи кодLibrary:
Выбрать в палитре инструмент Entity(Сущность)и создать новую сущность в модели:
Вызвать окно свойств сущности (пункт Properties в контекстном меню сущности или двойной щелчок по символу сущности в модели) и изменить название сущности наКнигаи ее код наBook:
Перейди на закладку Attributes (Атрибуты) и ввести атрибуты сущности, как показано на рисунке:
Перейти на закладку Indetifiers (идентификаторы) и создать первичный ключ сущности как показано на рисунках:
Аналогичным образом создать сущности Человек и Библиотека:
! Обратите внимание на то, что в списке элементов модели отображаются все использованные элементы данных (атрибуты) и созданные сущности. При настройках среды PowerDesinger “по умолчанию”элементы данных (атрибуты) с одинаковыми кодами (полеCode в свойствах) считаются одним и тем же элементом, поэтому изменение его параметров в определении одной сущности приведет к его изменению во всех остальных сущностях где он используется.
Выбрать в палитре инструмент Relationship(Связь)и создать новую связь в модели – от сущностиБиблиотекакКнига (для создания связи нужно подвести инструмент к сущностиБиблиотека, нажать левую кнопку мыши, и удерживая ее вести мышь к сущностиКнига, и отпустить левую кнопку мыши над сущностьюКнига):
Вызвать окно свойств сущности (пункт Properties в контекстном меню связи или двойной щелчок по символу связи в модели) и изменить название и код связи наХранитсяВБиблиотекеиStoredInLibrary:
Перейти на закладку Details и указать тип связи Многие-ко-Многим (Many-Many) и значность связи (Cardinality) 0,n (ноль или несколько):
Аналогично создать связь типа Многие-к-Одному между сущностями КнигаиЧеловек:
Аналогично создать связи ЗаписанВБиблиотекуиРаботаетВБиблиотеке:
Генерация физическоймодели данных для субдoracle
Выполните проверку созданной концептуальной модели, командой Tools\CheckModel, при это отметьте все элементы для проверки. В концептуальной модели не должно быть ошибок, препятствующих генерации физической модели:
Выберите команду Tools\GeneratePhysicalDataModel, укажите что Вы желаете создать модель для СУБДORACLE и нажмитеOk:
По концептуальной модели будет сгенерирована физическая модель для СУБДORACLE(сущности и связи преобразованы в таблицы, первичные и внешние ключи):
! Обратите внимание что связи типа Многие-ко-Многим были преобразованы в таблицы. Кроме того все типы данных использованные в концептуальной модели были преобразованы в типы данных специфичные для СУБД.