Re: BEFORE UPDATE trigger also fires at insert?

Поиск
Список
Период
Сортировка
От Tom Lane
Тема Re: BEFORE UPDATE trigger also fires at insert?
Дата
Msg-id 21233.1304873237@sss.pgh.pa.us
обсуждение исходный текст
Ответ на BEFORE UPDATE trigger also fires at insert?  (Clemens Eisserer <linuxhippy@gmail.com>)
Список pgsql-general
Clemens Eisserer <linuxhippy@gmail.com> writes:
> I've defined a small trigger to increment a field each time the row is updated:

>> CREATE TRIGGER inc_trigger BEFORE UPDATE ON Table FOR EACH ROW EXECUTE PROCEDURE inc_function();

> Works quite well, however the trigger is also fired if the table
> itself is modified.
> When deleting or inserting a single row, the trigger is executed for
> all rows contained in the table.

> Is this intetional, and if so, how can I get the behaviour to only
> execute the trigger when an update on the relation is performed?

That trigger definition will most certainly only fire on updates.

Are you sure you don't have additional trigger definitions calling the
same function?  Or maybe there are some rules on the table that result
in update actions?

            regards, tom lane

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

Предыдущее
От: Clemens Eisserer
Дата:
Сообщение: BEFORE UPDATE trigger also fires at insert?
Следующее
От: Christophe Pettus
Дата:
Сообщение: Time zone specifications, abbreviations vs full names