50.58. pg_trigger#
50.58. pg_trigger #
Каталог pg_trigger хранит триггеры на таблицы и представления.
См. CREATE TRIGGER
для получения дополнительной информации.
Таблица 50.58. pg_trigger Колонки
Тип столбца Описание |
|---|
Идентификатор строки |
Таблица, на которой находится этот триггер |
Родительский триггер, от которого был клонирован данный триггер (это происходит при создании или присоединении секций к секционированной таблице); ноль, если не является клоном |
Имя триггера (должно быть уникальным среди триггеров этой же таблицы) |
Функция, которую нужно вызвать |
Битовая маска, определяющая условия срабатывания триггера |
Управляет режимами, в которых срабатывает триггер.
session_replication_role - режимы, в которых срабатывает триггер.
|
True если триггер создан внутренне (обычно, для обеспечения
ограничения, идентифицированного |
Таблица, на которую ссылается ограничение ссылочной целостности (ноль, если триггер не предназначен для ограничения ссылочной целостности) |
Индекс, поддерживающий ограничение уникальности, первичный ключ, ссылочную целостность или ограничение-исключение (ноль, если триггер не относится к одному из этих типов ограничений) |
Запись |
True, если ограничительный триггер может быть отложенным |
True, если триггер ограничения изначально отложен |
Количество переданных аргументов строк в триггерную функцию |
Номера столбцов, если триггер является специфичным для столбца; в противном случае - пустой массив |
Аргументные строки, передаваемые в триггер, каждая с символом NULL в конце |
Дерево выражений (в представлении функции |
|
|
В настоящее время поддерживается только специфическая для столбцов триггерная обработка для событий UPDATE, поэтому tgattr актуален только для этого типа событий. tgtype также может содержать биты для других типов событий, но они считаются глобальными для таблицы, независимо от содержимого tgattr.
Примечание
Когда tgconstraint не равно нулю, tgconstrrelid, tgconstrindid, tgdeferrable и tginitdeferred в значительной степени дублируются с соответствующей записью pg_constraint. Однако возможно, что неоткладываемый триггер может быть связан с дифференцируемым ограничением: ограничения внешнего ключа могут иметь как дифференцируемые, так и неоткладываемые триггеры.
Примечание
pg_class.relhastriggers
должно быть true, если у отношения есть какие-либо триггеры в этом каталоге.