Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лабы / labsБД / БД_лаб3.doc
Скачиваний:
31
Добавлен:
16.04.2013
Размер:
48.64 Кб
Скачать

Триггеры и хранимые процедуры.

Триггеры и хранимые процедуры – это именованные блоки кода SQL, которые заранее откомпилированы и хранятся на сервере для того, чтобы быстро призводить выполнение запросов, валидацию данных и выполнять другие часто вызываемые функции.

Триггер – это процедура, которая выполняется автоматически как реакция на событие. Таким событием может быть вставка, изменение или удаление строки в существующей таблице.

Триггер ссылочной целостности – это особый вид триггера, используемый для поддержания целостности между двумя таблицами, которые связаны между собой. Если строка в одной таблице вставляется, изменяется или удаляется, то триггер ссылочной целостности (RI-триггер) сообщает СУБД, что нужно делать с теми строками в других таблицах, у которых значение внешнего ключа совпадает со значением первичного ключа вставленной (измененной, удаленной) строки. По умолчаниюErwinгенерирует триггеры, дублирующие декларативную ссылочную целостность. Для генерации триггеровErwinиспользует механизм шаблонов – специальных скриптов, использующих макрокоманды. Шаблоны триггеров ссылочной целостности связываются с сущностями в зависимости от типа связи и роли сущности в этой связи. Они определяют, какое правило ссылочной целостности будет по умолчанию дополнено шаблоном триггера.

Erwinимеет специальные редакторы, облегчающие создание и редактирование триггеров и процедур. Эти операции можно осуществить в окнеTableTriggerViewerпунктаTriggerконтекстно-зависимого меню для таблицы.

Генерация скрипта.

Для создания текста скрипта служат редакторы TableTemplateEditorиSchemaTemplateEditor. ОпцияGenerationOptionпозволяет задать тип скрипта – будет ли он выполнен до или после генерации таблицы или схемы. При создании текста скрипта так же, как и при создании текста хранимых процедур, может быть использованErwinTemplateToolbox.

Контрольные вопросы.

  1. Какие объекты БД генерируются при проектировании физической схемы?

  2. Отличия в идентификации объектов на логическом и физическом уровне.

  3. Как можно осуществить конвертирование БД из одной СУБД в другую?

  4. Что такое триггер? Какие элементы логической модели являются основополагающими для создания триггеров при прямом проектировании?

Лабораторное задание

Преобразовать созданную на предыдущем лабораторном занятии логическую модель данных в физическую модель для Oracle-8x. Сохранить полученныйSQL-скрипт в текстовом файле.

Соседние файлы в папке labsБД