Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лабораторные по ПРОЕКТИРОВАНИЮ ИС / Методичка-ЛАБЫ по Поектированию ИС.doc
Скачиваний:
45
Добавлен:
24.03.2015
Размер:
533.5 Кб
Скачать

Последовательность выполнения лабораторной работы:

1. Изучить вопросы теории нормализации, условия нахождения отношения в той или иной нормальной форме

2. Выполнить процедуру построения реляционной модели данных из ER-модели, построив необходимый набор отношений. Определить состав атрибутов отношений.

Определить первичные и внешние ключи отношений.

Выполнить шаги по нормализации полученных отношений, приведя модель к третьей нормальной форме.

5. Задать необходимые декларативные ограничения целостности исходя из специфики предметной области.

6. Представить связи между первичными и внешними ключами в виде вертикальной диаграммы.

7. Средствами имеющейся СУБД создать спроектированную базу данных, ее таблицы, задать необходимые ограничения целостности.

8. На языке SQL записать выражения для указанных в варианте задания запросов на выборку данных из созданной базы данных. Проверить работоспособность написанных запросов в интерактивном режиме.

9. Оформить следующие разделы отчета:

  • "Логическое проектирование реляционной модели базы данных", включив в него информацию из пп. 2 - 6;

  • "Типовые запросы на выборку данных", включив в него тексты запросов на языке SQL на выборку данных из созданной базы данных.

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

  1. Каковы задачи, решаемые на этапе логического проектирования?

  2. Каковы базовые свойства реляционной модели данных?

  3. В чем состоят требования структурной части реляционной модели данных?

  4. В чем состоят требования манипуляционной части реляционной модели данных?

  5. В чем состоят требования целостной части реляционной модели данных?

  6. Каковы общие свойства нормальных форм?

  7. Что такое функциональная, функционально полная зависимость?

  8. Каковы условия нахождения отношений в первой нормальной форме?

  9. Каковы условия нахождения отношений во второй нормальной форме?

  10. Каковы условия нахождения отношений в третьей нормальной форме?

  11. Каковы условия нахождения отношений в третьей усиленной нормальной форме?

  12. Что понимается под многозначной зависимостью?

  13. Каковы условия нахождения отношений в четвертой нормальной форме?

  14. Что понимается под понятием "проецирование без потерь"?

  15. Каковы условия нахождения отношений в пятой нормальной форме?

  16. В чем состоят общие требования обеспечения ограничений целостности?

  17. Каковы средства задания ограничений целостности в языке SQL?

Лабораторная работа 14

ТРИГГЕРЫ И ПРОЦЕДУРЫ

Цель работы

Написать необходимый набор триггеров и процедур, обеспечивающих задание процедурных ограничений целостности.

Содержание работы и методические указания

к ее выполнению

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

При определении триггера задаются:

  • имя триггера;

  • условия включения триггера;

  • имя таблицы, при обращении к которой срабатывает триггер;

  • момент срабатывания триггера;

  • имя, идентифицирующее строку со вставляемой, модифицируемой или удаляемой информацией;

  • дополнительное условие;

  • действие, выполняемое при срабатывании триггера (операторы Insert, Delete, Update, Execute procedure).

Синтаксис оператора Create trigger (в нотации СУБД Informix) для создания триггера приведен в Приложении 2.

При выполнении триггера выполняется оператор модификации данных либо вызывается хранимая процедура, предварительно созданная и помещенная в базу данных оператором Create procedure. Хранимая процедура в отличие от триггеров может выполнять достаточно сложный набор действий:

  • задавать и манипулировать с переменными различных типов;

  • проверять логические условия и выполнять различные виды циклов;

  • указывать действия, которые следует предпринять в случае ошибки (on exception);

  • вызывать другие процедуры, передавать и возвращать параметры и пр.

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

Соседние файлы в папке Лабораторные по ПРОЕКТИРОВАНИЮ ИС