选择 打开 改范围 完整检索页

pgsql.cc 提供对 postgresql.org 官网内容的中文翻译,由 Pigsty 团队维护。

文档 / 系统目录 / 系统目录表

SYSTEM CATALOG系统目录表

pg_trigger

触发器

系统目录表 引入 9.0(基线) 现存至 20 devel 5 次结构变更

关系 OID
2620
关系类型
r(普通表)
字段数
19
引入版本
9.0(收录基线)
版本状态
当前稳定版
结构变更
5 次

PostgreSQL 18 手册 官方文档 源码定义

版本轨迹

相对 PostgreSQL 17 无变化。

目录pg_trigger存储表和视图上的触发器。详见CREATE TRIGGER。

字段

PostgreSQL 18 的 19 个字段,按定义顺序排列。说明默认用本站手册的译文,没有译文的按英文原文显示。

字段 类型 说明
oid oidNOT NULL 行标识符
tgrelid oidNOT NULL pg_class.oid 触发器所在的表
tgparentid oidNOT NULL pg_trigger.oid 该触发器克隆自的父触发器(这种情况发生在创建分区或将其附加到分区表时);如果不是克隆,则为零
tgname nameNOT NULL 触发器名(在同一个表的触发器中必须唯一)
tgfoid oidNOT NULL pg_proc.oid 要被触发器调用的函数
tgtype smallintNOT NULL 标识触发器触发条件的位掩码
tgenabled "char"NOT NULL 控制触发器在session_replication_role模式中的触发。 O = 触发器在“origin”和“local”模式触发, D = 触发器被禁用, R = 触发器在“replica”模式触发, A = 触发器总是触发。
tgisinternal booleanNOT NULL 为真表示触发器是内部生成的(通常是为了强制由tgconstraint指定的约束)
tgconstrrelid oidNOT NULL pg_class.oid 被一个引用完整性约束引用的表(如果触发器不是针对一个引用完整性约束则为零)
tgconstrindid oidNOT NULL pg_class.oid 支持一个唯一、主键、引用完整性约束或者排除约束的索引(如果触发器不是针对这些约束类型中的一个则为零)
tgconstraint oidNOT NULL pg_constraint.oid 与触发器相关的pg_constraint项(如果触发器不用于约束则为零)
tgdeferrable booleanNOT NULL 如果约束触发器可推迟则为真
tginitdeferred booleanNOT NULL 如果约束触发器初始可推迟则为真
tgnargs smallintNOT NULL 传递给触发器函数的参数字符串个数
tgattr int2vectorNOT NULL pg_attribute.attnum 如果触发器是列限定的,这里存放列号;否则这是一个空数组
tgargs byteaNOT NULL 传递给触发器的参数字符串,每一个都以NULL结尾
tgqual pg_node_tree 触发器WHEN条件的表达式树(以nodeToString()表示);如果没有则为空
tgoldtable name OLD TABLE的REFERENCING子句名称,如果没有则为空
tgnewtable name NEW TABLE的REFERENCING子句名称,如果没有则为空

演化历史

相邻两个大版本之间的差异,新的在前。版本号链到该版的字段表。

  1. PostgreSQL 14 ← 13 仅描述更新

    4 处描述更新
    • tgconstraint The pg_constraint entry associated with the trigger, if any The pg_constraint entry associated with the trigger (zero if trigger is not for a constraint)
    • tgconstrindid The index supporting a unique, primary key, referential integrity, or exclusion constraint The index supporting a unique, primary key, referential integrity, or exclusion constraint (zero if trigger is not for one of these types of constraint)
    • tgconstrrelid The table referenced by a referential integrity constraint The table referenced by a referential integrity constraint (zero if trigger is not for a referential integrity constraint)
    • tgparentid Parent trigger that this trigger is cloned from, zero if not a clone; this happens when partitions are created or attached to a partitioned table. Parent trigger that this trigger is cloned from (this happens when partitions are created or attached to a partitioned table); zero if not a clone
  2. PostgreSQL 13 ← 12 结构变更

    tgparentid

  3. PostgreSQL 12 ← 11 结构变更

    oid:隐式列 → 常规列

    1 处描述更新
    • oid Row identifier (hidden attribute; must be explicitly selected) Row identifier
  4. PostgreSQL 10 ← 9.6 结构变更

    tgoldtabletgnewtable

    1 处描述更新
    • tgenabled Controls in which session_replication_role modes the trigger fires. O = trigger fires in "origin" and "local" modes, D = trigger is disabled, R = trigger fires in "replica" mode, A = trigger fires always. Controls in which session_replication_role modes the trigger fires. O = trigger fires in “origin” and “local” modes, D = trigger is disabled, R = trigger fires in “replica” mode, A = trigger fires always.
  5. PostgreSQL 9.5 ← 9.4 结构变更

    tgargs:可空 → 非空

  6. PostgreSQL 9.4 ← 9.3 仅描述更新

    1 处描述更新
    • tgconstrindid The index supporting a unique, primary key, or referential integrity constraint The index supporting a unique, primary key, referential integrity, or exclusion constraint
  7. PostgreSQL 9.3 ← 9.2 仅描述更新

    1 处描述更新
    • oid Row identifier (hidden system attribute; explicitly select oid). Row identifier (hidden attribute; must be explicitly selected)
  8. PostgreSQL 9.1 ← 9.0 结构变更

    tgqual:text → pg_node_tree 关系说明更新

    1 处描述更新
    • tgtype Bit mask identifying trigger conditions Bit mask identifying trigger firing conditions

字段矩阵

每个字段在 18 个收录版本里的存在情况;方格指向该版的字段表。「有变」指类型、可空、隐式或数组维数与上一版不同。

存在 有变 已移除 不存在

字段 9.09.19.29.39.49.59.61011121314151617181920
oid 存在 存在 存在 存在 存在 存在 存在 存在 存在 有变 存在 存在 存在 存在 存在 存在 存在 存在
tgrelid 存在 存在 存在 存在 存在 存在 存在 存在 存在 存在 存在 存在 存在 存在 存在 存在 存在 存在
tgname 存在 存在 存在 存在 存在 存在 存在 存在 存在 存在 存在 存在 存在 存在 存在 存在 存在 存在
tgfoid 存在 存在 存在 存在 存在 存在 存在 存在 存在 存在 存在 存在 存在 存在 存在 存在 存在 存在
tgtype 存在 存在 存在 存在 存在 存在 存在 存在 存在 存在 存在 存在 存在 存在 存在 存在 存在 存在
tgenabled 存在 存在 存在 存在 存在 存在 存在 存在 存在 存在 存在 存在 存在 存在 存在 存在 存在 存在
tgisinternal 存在 存在 存在 存在 存在 存在 存在 存在 存在 存在 存在 存在 存在 存在 存在 存在 存在 存在
tgconstrrelid 存在 存在 存在 存在 存在 存在 存在 存在 存在 存在 存在 存在 存在 存在 存在 存在 存在 存在
tgconstrindid 存在 存在 存在 存在 存在 存在 存在 存在 存在 存在 存在 存在 存在 存在 存在 存在 存在 存在
tgconstraint 存在 存在 存在 存在 存在 存在 存在 存在 存在 存在 存在 存在 存在 存在 存在 存在 存在 存在
tgdeferrable 存在 存在 存在 存在 存在 存在 存在 存在 存在 存在 存在 存在 存在 存在 存在 存在 存在 存在
tginitdeferred 存在 存在 存在 存在 存在 存在 存在 存在 存在 存在 存在 存在 存在 存在 存在 存在 存在 存在
tgnargs 存在 存在 存在 存在 存在 存在 存在 存在 存在 存在 存在 存在 存在 存在 存在 存在 存在 存在
tgattr 存在 存在 存在 存在 存在 存在 存在 存在 存在 存在 存在 存在 存在 存在 存在 存在 存在 存在
tgargs 存在 存在 存在 存在 存在 有变 存在 存在 存在 存在 存在 存在 存在 存在 存在 存在 存在 存在
tgqual 存在 有变 存在 存在 存在 存在 存在 存在 存在 存在 存在 存在 存在 存在 存在 存在 存在 存在
tgoldtable 不存在 不存在 不存在 不存在 不存在 不存在 不存在 存在 存在 存在 存在 存在 存在 存在 存在 存在 存在 存在
tgnewtable 不存在 不存在 不存在 不存在 不存在 不存在 不存在 存在 存在 存在 存在 存在 存在 存在 存在 存在 存在 存在
tgparentid 不存在 不存在 不存在 不存在 不存在 不存在 不存在 不存在 不存在 不存在 存在 存在 存在 存在 存在 存在 存在 存在

系统列

每张表都有的 6 个系统列
  • tableoidoid-6
  • cmaxcid-5
  • xmaxxid-4
  • cmincid-3
  • xminxid-2
  • ctidtid-1

同类关系

关系 引入 字段 版本变动 最近变更
SYSTEM CATALOG 系统目录表 70 个
pg_aggregate 9.0基线 22 113 次
聚合函数 现存
pg_am 9.0基线 4 124 次
关系访问方法 现存
pg_amop 9.0基线 9 122 次
访问方法操作符 现存
pg_amproc 9.0基线 6 121 次
访问方法支持函数 现存
pg_attrdef 9.0基线 4 122 次
列默认值 现存
pg_attribute 9.0基线 25 189 次
表列(“属性”) 现存
pg_auth_members 9.0基线 7 161 次
授权标识符成员关系 现存
pg_authid 9.0基线 12 123 次
授权标识符(角色) 现存
pg_cast 9.0基线 6 121 次
转换(数据类型转换) 现存
pg_class 9.0基线 34 189 次
表、索引、序列、视图 (“关系”) 现存
pg_collation 9.1 12 175 次
排序规则(区域设置信息) 现存
pg_constraint 9.0基线 28 187 次
检查约束、唯一约束、主键约束、外键约束 现存
pg_conversion 9.0基线 8 121 次
编码转换信息 现存
pg_database 9.0基线 18 175 次
本数据库集簇中的数据库 现存
pg_db_role_setting 9.0基线 3
每角色和每数据库的设置 现存
pg_default_acl 9.0基线 5 121 次
对象类型的默认权限 现存
pg_depend 9.0基线 7
数据库对象间的依赖 现存
pg_description 9.0基线 4 9.51 次
数据库对象上的描述或注释 现存
pg_enum 9.0基线 4 122 次
枚举标签和值定义 现存
pg_event_trigger 9.3 7 121 次
事件触发器 现存
pg_extension 9.1 8 122 次
已安装扩展 现存
pg_foreign_data_wrapper 9.0基线 8 193 次
外部数据包装器定义 现存
pg_foreign_server 9.0基线 8 121 次
外部服务器定义 现存
pg_foreign_table 9.1 3
外部表信息 现存
pg_index 9.0基线 21 155 次
索引信息 现存
pg_inherits 9.0基线 4 141 次
表继承层次 现存
pg_init_privs 9.6 5
对象初始权限 现存
pg_language 9.0基线 9 121 次
编写函数的语言 现存
pg_largeobject 9.0基线 3 9.51 次
大对象的数据页 现存
pg_largeobject_metadata 9.0基线 3 121 次
大对象的元数据 现存
pg_namespace 9.0基线 4 121 次
模式 现存
pg_opclass 9.0基线 9 121 次
访问方法操作符类 现存
pg_operator 9.0基线 15 121 次
操作符 现存
pg_opfamily 9.0基线 5 121 次
访问方法操作符族 现存
pg_parameter_acl 15 3
已授予权限的配置参数 现存
pg_partitioned_table 10 8 111 次
表的分区键的信息 现存
pg_pltemplate 9.0基线 8 9.51 次
过程语言的模板数据 于 13 移除
pg_policy 9.5 8 122 次
行安全策略 现存
pg_proc 9.0基线 30 147 次
函数和过程 现存
pg_propgraph_element 19 14
属性图元素(顶点和边) 于 20 移除
pg_propgraph_element_label 19 3
属性图中元素与标签之间的链接 于 20 移除
pg_propgraph_label 19 3
属性图标签 于 20 移除
pg_propgraph_label_property 19 4
属性图中按标签区分的属性定义 于 20 移除
pg_propgraph_property 19 6
属性图属性 于 20 移除
pg_publication 10 11 195 次
用于逻辑复制的发布 现存
pg_publication_namespace 15 3
模式到发布映射 现存
pg_publication_rel 10 6 193 次
关系与发布的映射 现存
pg_range 9.2 12 192 次
范围类型的信息 现存
pg_replication_origin 9.5 2
已注册的复制源 现存
pg_rewrite 9.0基线 8 123 次
查询重写规则 现存
pg_seclabel 9.1 5 9.51 次
数据库对象上的安全标签 现存
pg_sequence 10 8
有关序列的信息 现存
pg_shdepend 9.0基线 7
共享对象上的依赖 现存
pg_shdescription 9.0基线 3 9.51 次
共享对象上的注释 现存
pg_shseclabel 9.2 4 9.51 次
共享数据库对象上的安全标签 现存
pg_statistic 9.0基线 31 122 次
规划器统计 现存
pg_statistic_ext 10 9 174 次
扩展的规划器统计信息(定义) 现存
pg_statistic_ext_data 12 6 152 次
扩展的规划器统计信息(已构建的统计信息) 现存
pg_subscription 10 23 197 次
逻辑复制订阅 现存
pg_subscription_rel 10 4 131 次
订阅的关系状态 现存
pg_tablespace 9.0基线 5 122 次
本数据库集簇内的表空间 现存
pg_transform 9.5 5 121 次
转换(将数据类型转换为过程语言需要的形式) 现存
pg_trigger 9.0基线 19 135 次
触发器 现存
pg_ts_config 9.0基线 5 121 次
文本搜索配置 现存
pg_ts_config_map 9.0基线 4
文本搜索配置的词元映射 现存
pg_ts_dict 9.0基线 6 121 次
文本搜索字典 现存
pg_ts_parser 9.0基线 8 121 次
文本搜索分析器 现存
pg_ts_template 9.0基线 5 121 次
文本搜索模板 现存
pg_type 9.0基线 32 144 次
数据类型 现存
pg_user_mapping 9.0基线 4 121 次
将用户映射到外部服务器 现存