Корпоративные базы данных - статьи




Триггеры



Триггеры - это определяемые пользователем действия, которые выполняются, когда над таблице, к
которой прикреплен триггер, выполняются операции INSERT, UPDATE или DELETE. В SQLBase
действия триггера являются хранимыми процедурами. Иными словами, пользователь создает
хранимые процедуры, которые описывают действия, совершаемые триггерами.

В SQLBase триггеры используются для решения трех основных задач:


  • Усиление ссылочной целостности - Триггеры могут быть использованы для
    реализации ограничений ссылочной целостности, выходящие за пределы
    стандартных ограничений SQLBase. Например, пользователь может захотеть
    реализовать правило. каскадного изменения данных (update cascade rule). Он
    может это сделать, создав триггер, который будет обновлять дочернюю
    таблицу (таблицы) при каждом изменении колонки в родительской таблице.
  • Проверка данных - Триггеры могут выполнять разнообразную проверку
    данных. Значения колонок могут передаваться в триггерные процедуры в
    качестве параметров, где над ними могут производиться самые разнообразные
    операции. В текущей версии SQLBase реализован механизм, который
    позволяет производить ввод данных в таблицы непосредственно из триггера,
    без передачи информации извне. Например, пользователь может создать
    триггер, который будет получать из приложения данные для ввода в строку
    таблицы, создавать уникальный ключ для этой строки внутри своей процедуры
    и передавать в базу данных полную строку с ключом. Помимо генерации
    ключей, триггеры SQLBase могут выполнять и другие подобные операции.
  • Регистрация изменения данных - Создатель таблицы или администратор
    базы данных может пожелать иметь информацию о времени каждого
    изменения данных в таблице, а также о том, какой пользователь эти изменения
    производил. Для этого он создает триггер, в который поступает системное
    время операции UPDATE и имя пользователя. Процедура триггера затем
    вводит эту информацию в специальную таблицу регистрации изменений.
    Использование триггеров подобного типа позволяет организовать системы



    Содержание  Назад  Вперед