更新时间:2024-10-25 GMT+08:00

系统函数信息函数

pv_builtin_functions()

描述:查询系统内置函数的信息。

返回类型:record

pg_get_functiondef(func_oid)

描述:获取函数的定义。

返回类型:text

func_oid为函数的OID,可以通过PG_PROC系统表查询。

示例:查询函数justify_days的OID及其函数定义。

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
SELECT oid FROM pg_proc WHERE proname ='justify_days';
 oid
------
 1295
(1 row)

SELECT * FROM pg_get_functiondef(1295);
 headerlines |                          definition
-------------+--------------------------------------------------------------
           4 | CREATE OR REPLACE FUNCTION pg_catalog.justify_days(interval)+
             |  RETURNS interval                                           +
             |  LANGUAGE internal                                          +
             |  IMMUTABLE STRICT NOT FENCED NOT SHIPPABLE                  +
             | AS $function$interval_justify_days$function$                +
             |
(1 row)

备注:pg_get_functiondef返回函数查询结果为存储过程原始文本格式,自带转义符'\',便于后续应用的正确解析。

pg_get_function_arguments(func_oid)

描述:获取函数定义的参数列表(带默认值)。

返回类型:text

备注:pg_get_function_arguments返回一个函数的参数列表,需要在CREATE FUNCTION中使用这种格式。

pg_get_function_identity_arguments(func_oid)

描述:获取参数列表来确定一个函数 (不带默认值)。

返回类型:text

备注:pg_get_function_identity_arguments返回需要的参数列表用来标识函数,这种形式需要在ALTER FUNCTION中使用,并且这种形式省略了默认值。

pg_get_function_result(func_oid)

描述:获取函数的RETURNS子句。

返回类型:text

备注:pg_get_function_result为函数返回适当的RETURNS子句。