Я хотел бы создать свой первый триггер в моей базе данных PostgreSQL
, но я получил syntax error
.
Триггер должен иметь возможность удалять каждую строку из таблицы token_jwt_usertoken
, где date_information
ниже now() - interval '2 month'
.Другими словами, если срок действия строки истекает как минимум через 2 месяца, ее следует удалить.
Это моя команда:
CREATE FUNCTION after_update_token() RETURNS TRIGGER AS $after_update_token$
BEGIN
IF old.date_information < now() - INTERVAL '2 month'
THEN
DELETE FROM token_jwt_usertoken WHERE old.date_information < now() - INTERVAL '2 month';
END IF;
END;
$after_update_token$ LANGUAGE plpgsql;
CREATE TRIGGER after_update_token AFTER UPDATE ON token_jwt_usertoken FOR EACH ROW EXECUTE FUNCTION after_update_token();
Я получаю:
[2019-02-07 17:14:01] [42601] ОШИБКА: синтаксическая ошибка в или около «FUNCTION» [2019-02-07 17:14:01] Позиция: 92
Тогда я не знаю, правильно ли написан мой запрос в моем триггере.
Спасибо!