pg_trigger
#目录 pg_trigger
存储表和视图上的触发器。有关详细信息,请参见 CREATE TRIGGER。
表 51.58. pg_trigger
列
列类型 描述 |
---|
行标识符 |
此触发器位于其上的表 |
此触发器克隆而来的父触发器(分区被创建或附加到分区表时发生);若不是克隆,则为零 |
触发器名称(同一个表中的触发器之间必须唯一) |
要调用的函数 |
标识触发器触发条件的位掩码 |
控制触发器在哪些 session_replication_role 模式中触发。 |
如果触发器是内部生成的(通常是为了强制由 |
引用完整性约束的表(如果触发器不是针对完整性约束,则为零) |
索引支持唯一的、主键、引用完整性或排除约束(当触发器不是下列类型约束时为零) |
与触发器关联的 |
当约束触发器可延期时为 True |
当约束触发器最初延期时为 True |
传递到触发器函数的参数字符串数量 |
列数,如果触发器针对特定列;否则为一个空数组 |
传递给触发器的参数字符串,每个字符串都以 NULL 结尾 |
触发器的 |
|
|
目前,仅支持针对 UPDATE
事件,针对特定列触发,因此 tgattr
仅与此事件类型相关。 tgtype
还可以包含针对其他事件类型的位,但无论 tgattr
中的内容如何,这些事件类型都被认为是针对全表的。
当 tgconstraint
为非零时, tgconstrrelid
、tgconstrindid
、tgdeferrable
和 tginitdeferred
在很大程度上与引用的 pg_constraint
项重复。但是,不可延期的触发器有可能与可延期的约束关联:外键约束可以具有某些可延期的触发器和某些不可延期的触发器。
pg_class.relhastriggers
必须为 true,如果关系在此目录中存在任何触发器。