Я пытаюсь создать триггер, но получаю синтаксическую ошибку, когда использую инструкцию WHEN, как в the CREATE TRIGGER
docs.Триггер PostgreSQL при ошибке синтаксиса
Я мог бы, конечно, поставить условие в функции, но я думаю, это было бы намного медленнее и менее красивые
CREATE TRIGGER insert_test
AFTER INSERT
ON mountain_stats
FOR EACH ROW
WHEN(NOT EXISTS(SELECT *
FROM mountain_stats_history
WHERE country=NEW.country AND key=NEW.key AND value=NEW.value))
EXECUTE PROCEDURE update_mountain_stats_history();
PostgreSQL версия? Сообщение об ошибке? (Вы связаны с документами 9.1, но это не обязательно означает, что вы на 9.1). –