pg_trigger #
目录 pg_trigger
存储表和视图上的触发器。
更多信息请参见 CREATE TRIGGER。
Table 52.58. \1 字段列说明
Column Type Description |
|---|
Row identifier |
此触发器所在的表 |
此触发器从其克隆而来的父触发器 (当在分区表上创建或附加分区时会发生克隆); 如果不是克隆则为零 |
触发器名称(在同一个表的触发器中必须唯一) |
要调用的函数 |
标识触发器触发条件的位掩码 |
控制触发器在哪些
session_replication_role 模式下触发。
|
如果触发器是内部生成的(通常是为了强制实施 |
被引用完整性约束引用的表 (如果触发器不是针对引用完整性约束的则为零) |
支持唯一、主键、引用完整性或排他约束的索引 (如果触发器不是针对这些类型的约束则为零) |
与该触发器关联的
|
如果约束触发器可以被延迟则为真 |
如果约束触发器初始即为延迟的则为真 |
传递给触发器函数的参数字符串的个数 |
列号(如果触发器是针对特定列的);否则为一个空数组 |
传递给触发器的参数字符串,每个都以 NULL 结尾 |
该触发器 |
|
|
目前,只有 UPDATE 事件支持特定列的触发,
因此 tgattr 只与该事件类型相关。
tgtype 中也可能包含其他事件类型的位,
但无论 tgattr 中是什么,
那些事件都被假定为表级的。
当 tgconstraint 非零时,
tgconstrrelid、tgconstrindid、
tgdeferrable 和 tginitdeferred
在很大程度上与被引用的
pg_constraint
条目冗余。不过,非可延迟的触发器也可能与可延迟的约束关联:
外键约束可以有一些可延迟的触发器和一些非可延迟的触发器。
如果关系在此目录中拥有任何触发器,
则 pg_class.relhastriggers 必须为真。