如何在Postgres中获取系统函数的代码

时间:2013-12-25 06:37:19

标签: postgresql

如何获得系统功能的定义?我指的是它的代码。

1 个答案:

答案 0 :(得分:1)

使用

获取系统功能的oid
SELECT 'funcname'::regproc::oid;

结果是一个像2176的数字。

src/include/catalog/pg_proc.h中查找oid。你会看到像

这样的东西
DATA(insert OID = 2176 ....

第4个条目是C函数名称。由于重载等原因,它并不总是与SQL函数名称(第二个字段)相同。

使用git grep ^procname或使用ctags / cscope例如vim -t procname查找C流程定义。