Поделиться через


Использование триггеров INSTEAD OF в представлениях

При помощи триггеров INSTEAD OF можно переопределить операцию INSERT, UPDATE или DELETE в представлении.Например, можно определить в представлении триггер INSTEAD OF INSERT, который заменит стандартную инструкцию INSERT.

Предположим, что в начале в базе данных pubs используется следующее представление:

CREATE VIEW AuthorsNames
AS
SELECT au_id, au_fname, au_lname
FROM authors 

Может возникнуть необходимость вставить данные в столбцы, не отображаемые в этом представлении.Для этого нужно создать в представлении триггер INSTEAD OF, который будет обрабатывать вставку элементов.

CREATE TRIGGER ShowInsert on AuthorsNames
INSTEAD OF INSERT
AS
BEGIN
INSERT INTO authors
   SELECT address, au_fname, au_id, au_lname, city, contract, phone, state, zip
   FROM inserted
END

Дополнительные сведения о триггерах INSTEAD OF и примеры см. в документации по соответствующему серверу баз данных.Если используется Microsoft SQL Server, см. раздел "INSTEAD OF" в SQL Server Books Online.

См. также

Другие ресурсы

Работа с представлениями

Работа с триггерами