ALTER TRIGGER
ALTER TRIGGER — изменить определение триггера
Синтаксис
ALTER TRIGGERимя
ONимя_таблицы
RENAME TOновое_имя
ALTER TRIGGERимя
ONимя_таблицы
[ NO ] DEPENDS ON EXTENSIONимя_расширения
Описание
ALTER TRIGGER
меняет свойства существующего триггера. Предложение RENAME
переименовывает данный триггер, не затрагивая его определение. Предложение DEPENDS ON EXTENSION
помечает триггер как зависимый от расширения, так что при удалении расширения будет автоматически удаляться и триггер.
Изменять свойства триггера может только владелец таблицы, с которой работает триггер.
Параметры
имя
Имя существующего триггера, подлежащего изменению.
имя_таблицы
Имя таблицы, с которой работает триггер.
новое_имя
Новое имя триггера.
имя_расширения
Имя расширения, от которого будет зависеть триггер (или не будет, если указано
NO
). Триггер, помеченный как зависимый от расширения, автоматически удаляется при удалении расширения.
Примечания
Возможность временно включать или отключать триггер предоставляется командой ALTER TABLE, а не ALTER TRIGGER
, так как ALTER TRIGGER
не позволяет удобным образом выразить указание включить или отключить все триггеры таблицы сразу.
Примеры
Переименование существующего триггера:
ALTER TRIGGER emp_stamp ON emp RENAME TO emp_track_chgs;
Обозначение триггера как зависимого от расширения:
ALTER TRIGGER emp_stamp ON emp DEPENDS ON EXTENSION emplib;
Совместимость
ALTER TRIGGER
— реализованное в PostgreSQL расширение стандарта SQL.
См. также
ALTER TABLEDISCARD
DISCARD — discard session state
Synopsis
DISCARD { ALL | PLANS | SEQUENCES | TEMPORARY | TEMP }
Description
DISCARD
releases internal resources associated with a database session. This command is useful for partially or fully resetting the session's state. There are several subcommands to release different types of resources; the DISCARD ALL
variant subsumes all the others, and also resets additional state.
Parameters
PLANS
Releases all cached query plans, forcing re-planning to occur the next time the associated prepared statement is used.
SEQUENCES
Discards all cached sequence-related state, including
currval()
/lastval()
information and any preallocated sequence values that have not yet been returned bynextval()
. (See CREATE SEQUENCE for a description of preallocated sequence values.)TEMPORARY
orTEMP
Drops all temporary tables created in the current session.
ALL
Releases all temporary resources associated with the current session and resets the session to its initial state. Currently, this has the same effect as executing the following sequence of statements:
CLOSE ALL; SET SESSION AUTHORIZATION DEFAULT; RESET ALL; DEALLOCATE ALL; UNLISTEN *; SELECT pg_advisory_unlock_all(); DISCARD PLANS; DISCARD TEMP; DISCARD SEQUENCES;
Notes
DISCARD ALL
cannot be executed inside a transaction block.
Compatibility
DISCARD
is a PostgreSQL extension.