我正在尝试为我的数据库构建一个文档系统,我想包含我的函数和触发器的来源。
我设法找到了函数和触发器的所有元数据,但是这些函数和触发器的实际主体存储在哪里?
使用功能pg_get_functiondef()获取完整的函数定义:
SELECT pg_get_functiondef('my_schema.my_func(int)'::regprocedure)
演员阵容对象标识符regprocedure是获得的最简单的方法oid
您的函数,您将其提供给上述函数。
手册上pg_catalog.pg_proc:
对于编译函数,无论是内置函数还是动态加载函数,prosrc
包含函数的 C 语言名称(链接符号)。对于所有其他
目前已知的语言类型,prosrc
包含函数的源文本。
仅检索函数体:
SELECT prosrc
FROM pg_proc
WHERE oid = 'my_schema.my_func(int)'::regprocedure;
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)