В PostgreSQL команда ALTER TRIGGER используется для изменения имени триггера. Другие параметры триггера напрямую изменить нельзя — в таких случаях создаётся новый триггер с нужными настройками, а старый удаляется.
Синтаксис
ALTER TRIGGER старое_имя ON имя_таблицы
RENAME TO новое_имя;старое_имя— текущее имя триггера.имя_таблицы— таблица, к которой привязан триггер.новое_имя— новое имя триггера.
Переименование триггера
Пример изменения имени триггера user_update_trigger в таблице users:
ALTER TRIGGER user_update_trigger ON users
RENAME TO updated_user_trigger;Изменение других параметров триггера
Изменить события, порядок или функцию триггера командой ALTER TRIGGER нельзя. Для этого:
- Удаляется старый триггер с помощью
DROP TRIGGER:DROP TRIGGER IF EXISTS updated_user_trigger ON users; - Создаётся новый триггер с нужными параметрами:
CREATE TRIGGER updated_user_trigger AFTER UPDATE ON users FOR EACH ROW EXECUTE FUNCTION log_user_changes();