pg_get_function_identity_arguments()
是一个系统函数,用于生成函数或过程的参数列表作为文本字符串。生成的字符串不包含任何默认值,适用于作为函数签名用于 ALTER FUNCTION
等命令。
pg_get_function_identity_arguments()
在 PostgreSQL 8.4 中添加。
用法
pg_get_function_identity_arguments (oid
) →text
pg_get_function_identity_arguments()
类似于 pg_get_function_arguments()
,不同之处在于它不输出任何默认参数。
更改历史记录
- PostgreSQL 8.4
- 添加 (提交 455dffbb)
示例
pg_get_function_identity_arguments()
的基本用法示例
postgres=# CREATE FUNCTION foo(id INT, message TEXT) RETURNS TEXT LANGUAGE SQL AS $$ SELECT message || ':' || id::TEXT $$; CREATE FUNCTION postgres=# SELECT pg_get_function_identity_arguments('foo(int, text)'::regprocedure); pg_get_function_identity_arguments ------------------------------------ id integer, message text (1 row)
所有默认参数都被省略
postgres=# CREATE FUNCTION bar (message TEXT DEFAULT 'no message supplied') RETURNS TEXT LANGUAGE SQL AS $$ SELECT 'The message is: ' || message $$; CREATE FUNCTION postgres=# SELECT pg_get_function_identity_arguments('bar(text)'::regprocedure); pg_get_function_identity_arguments ------------------------------------ message text (1 row)
参考
- PostgreSQL 文档: 系统目录信息函数