ON UPDATE trigger question
| От | Josh Trutwin |
|---|---|
| Тема | ON UPDATE trigger question |
| Дата | |
| Msg-id | 20070912135613.167c55a4@sinkhole.intrcomm.net обсуждение исходный текст |
| Ответы |
Re: ON UPDATE trigger question
Re: ON UPDATE trigger question |
| Список | pgsql-general |
If I create an ON UPDATE trigger run on each row after update, does
the trigger fire only on rows affected by the update or for all rows?
For example:
CREATE TRIGGER my_update_trigger
AFTER UPDATE ON my_table
FOR EACH ROW
EXECUTE PROCEDURE my_update_proc;
UPDATE my_table SET my_val = my_val * 2;
Will the trigger fire on rows that have NULL for my_val?
If so, would this be ok in the trigger proc to generically tell if
the row actually changed:
-- check if update affected the row
IF TG_OP = 'UPDATE' THEN
IF OLD = NEW THEN
RETURN NULL;
END IF;
END IF;
-- further processing here
Or would you have to compare each field in OLD, NEW to see if
anything actually changed?
Josh
В списке pgsql-general по дате отправления: