Создание триггера DML

Оценить
(2 голоса)

Триггер создается посредством оператора create trigger, который имеет следующий синтаксис:

create trigger [schema_name.] trigger_name on {table_name I view_name}

[with dml_trigger_option {,  ...]] {for I after |  instead of} {[insert]   [,]   [update] [,] [delete]} [with append]

[as sql_statement \ external name method_name}

Здесь schema_name- имя схемы, которой принадлежит триггер; trigger_ name- имя триггера; tabie_name- имя таблицы, для которой задается триггер. Для представлений также поддерживаются триггеры, как показано в варианте view_name.

Опции after и instead of являются двумя дополнительными опциями, которые вы можете задать в триггере. (Предложение for является синонимом для after.) Триггеры after вызываются после появления действий, обрабатываемых в триггерах. Триггеры instead of выполняются вместо заданных в триггере действий. Триггеры after могут создаваться только для таблиц, в то время как триггеры instead of могут создаваться как для таблиц, так и для представлений. Примеры, показывающие использование этих двух типов триггеров, будут даны далее В этом разделе.

Опции insert, update и delete задают действия триггера. (Действием триггера является тип оператора Transact-SQL, который активирует этот триггер.) Эти три оператора могут быть записаны в любой допустимой комбинации. Оператор delete недопустим, если используется оператор if update (ига столбца).

Как вы можете видеть в синтаксисе оператора create trigger, спецификация as sqi_statement используется для задания действия (действий) триггера. (Вы также можете использовать опцию external nane, которая рассматривается далее В этом разделе.)

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


Модификация структуры триггера
Использование таблиц удаления и добавления
Области приложений для DML-триггеров
Триггеры AFTER
Создание контрольного журнала

Добавить комментарий


Защитный код
Обновить

© 2021 serversql.ru. Все права защищены.