Как отправить значения из измененной строки в триггер в postgres? - PullRequest
1 голос
/ 04 ноября 2011

Я хочу создать триггер, как-то так:

CREATE TRIGGER foo 
AFTER UPDATE OR INSERT ON bar 
FOR EACH ROW EXECUTE PROCEDURE baz(NEW.id);

Часть с NEW.id не работает.Как отправить значения из измененной строки (например, id) в триггер-функцию.

1 Ответ

2 голосов
/ 04 ноября 2011

Функция триггера (процедура) знает NEW и OLD автоматически.Нет необходимости передавать их в качестве параметров.Подробнее читайте в главе Процедуры триггера в руководстве:

Когда функция PL / pgSQL вызывается как триггер, несколько специальных переменных автоматически создаются на верхнем уровнеблок.Это:

NEW

Тип данных RECORD;переменная, содержащая новую строку базы данных для операций INSERT / UPDATE в триггерах уровня строки.Эта переменная равна NULL в триггерах уровня оператора и для операций DELETE.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...