trigger : emulate "instead of" with before ?

Поиск
Список
Период
Сортировка
От Albrecht Berger
Тема trigger : emulate "instead of" with before ?
Дата
Msg-id 046801c331a2$0c483e70$a07ba8c0@wxp
обсуждение исходный текст
Ответы Re: trigger : emulate "instead of" with before ?  ("Matthew Nuzum" <cobalt@bearfruit.org>)
Re: trigger : emulate "instead of" with before ?  (Jeff Eckermann <jeff_eckermann@yahoo.com>)
Re: trigger : emulate "instead of" with before ?  (Tom Lane <tgl@sss.pgh.pa.us>)
Список pgsql-sql
Hello,
I need a trigger which is updating a delete flag of a row instead of
deleting it physically.

How do I implement a trigger which doesn't execute a delete without raising
an exception
in plsql ?

CREATE TRIGGER trigger1 BEFORE DELETE ON table1
FOR EACH ROW EXECUTE PROCEDURE setDeleteFlag ();

If I use
RAISE EXCEPTION "..."
the delete statement isn't executed, but I think the transaction is rolled
back too, am I right ?

So what is the best way to implement something (Oracle like) like that :
CREATE TRIGGER trigger1 INSTEAD OF DELETE ON table1
FOR EACH ROW EXECUTE PROCEDURE setDeleteFlag ();

thx



В списке pgsql-sql по дате отправления:

Предыдущее
От: Tom Lane
Дата:
Сообщение: Re: question on rules
Следующее
От: "Matthew Nuzum"
Дата:
Сообщение: Re: trigger : emulate "instead of" with before ?