Лабораторная работа №5

Тема работы: Триггеры, генераторы, исключения,

Цель работы: Изучить используемые в Firebird триггеры, генераторы и исключения. Получить навыки работы с триггерами, генераторами и исключениями с по-мощью команд SQL и с помощью программы "IB Expert".

Теоретические сведения

Генераторы (Generators)

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

Пример создания генератора:

CREATE GENERATOR MyGenerator;

SET GENERATOR MyGenerator TO 1000;

Генераторы непосредственно не привязываются к какому-либо полю. Они просто позволяют генерировать уникальные числа. Для этого используется функция Gen_ID(), встроенная в InterBase, которая генерирует целочисленные значения. Она берет генератор в качестве первого параметра и значение шага в качестве второго. Обычно приращение равно 1.

Обращаться к генератору можно только через функцию Gen_ID().

Бизнес-правила

В реальной жизни вопрос целостности базы данных связан с правилами, установленными у пользователя информационной системы. Например, в компании могут быть установлены такие правила:

• клиентам не разрешается размещать заказы на сумму, превышающую их лимит кредита;

• сведения о выполненных заказах хранятся в течение шести месяцев, а затем удаляются;

• нельзя выдавать читателю новых книг, пока он не вернет взятых ранее;

• каждый раз, когда продается какой-нибудь товар, для служащего, оформившего продажу, и для отдела, в котором этот служащий работает, на стоимость проданного товара увеличивается значение определенного поля, используемого для вычисления премии; в случае возврата всего или части проданного товара, значение этого поля соответствующим образом должно уменьшиться;

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

Такие правила называются бизнес-правилами. В первом стандарте SQL считалось, что эти правила выходят за рамки ответственности СУБД и за их реализацию отвечает прикладная программа, осуществляющая доступ к базе данных. Впервые в 1986 году в СУБД Sybase было введено понятие триггер, что позволило включить реализацию бизнес-правил в базу данных.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: