pg_get_triggerdef()
是一个系统函数,它生成重新创建指定触发器所需的 SQL 代码。
pg_get_triggerdef()
在 PostgreSQL 7.4 中添加。
用法
pg_get_triggerdef (trigger
oid
[,pretty
boolean
] ) →text
请注意,返回的文本是从元数据重建的,而不是原始 CREATE TRIGGER
命令的逐字文本。
更改历史记录
- PostgreSQL 9.3
- 输出始终缩进(提交 62e66640)
- PostgreSQL 7.4
- 添加(提交 3be6367b)
示例
pg_get_triggerdef()
的基本用法示例
postgres=# SELECT pg_get_triggerdef(oid) FROM pg_trigger WHERE tgname = 'trg_foo_01'; pg_get_triggerdef -------------------------------------------------------------------------------------------------- CREATE TRIGGER trg_foo_01 AFTER INSERT ON public.foo FOR EACH ROW EXECUTE FUNCTION foo_trigger() (1 row)
指定 pretty
选项
postgres=# SELECT pg_get_triggerdef(oid, true) FROM pg_trigger WHERE tgname = 'trg_foo_01'; pg_get_triggerdef ------------------------------------------------------------------------------------------- CREATE TRIGGER trg_foo_01 AFTER INSERT ON foo FOR EACH ROW EXECUTE FUNCTION foo_trigger() (1 row)
参考
- PostgreSQL 文档: 系统目录信息函数