↑↓ 选择 ↵ 打开 ⌫ 改范围 完整检索页

pgsql.cc 提供对 postgresql.org 官网内容的中文翻译,由 Pigsty 团队维护。

受支持版本: 当前版本 (18) / 17 / 16 / 15 / 14
测试与开发版本: 19 / devel
不受支持的版本: 13 / 12 / 11 / 10 / 9.6 / 9.5 / 9.4 / 9.3 / 9.2 / 9.1 / 9.0 / 8.4 / 8.3 / 8.2 / 8.1 / 8.0 / 7.4 / 7.3 / 7.2 / 7.1
历史版本PostgreSQL 8.0 已于 2010 年 10 月结束社区维护,本页译文保留供仍在使用旧版本的读者参考。新系统请看当前版本。

41.24. pg_proc #

目录pg_proc存放有关函数(或过程)的信息。 更多信息请参见CREATE FUNCTION和第 31.3 节。

该表同时包含聚合函数和普通函数的数据。如果proisagg为真, 在pg_aggregate中应该有一个相匹配的行。

表 41.24. pg_proc Columns

名称 类型 引用 描述
proname name   函数的名字
pronamespace oid pg_namespace.oid 函数所属的名字空间的OID
proowner oid pg_shadow.usesysid 函数的拥有者
prolang oid pg_language.oid 实现语言或该函数的调用接口
proisagg bool   该函数是聚合函数
prosecdef bool   函数是一个安全性定义者(即,一个“setuid”函数)
proisstrict bool   当任一调用参数为 NULL 时,函数是否返回空值。在这种情况下,函数实际上根本不会被调用。非“strict”函数必须准备好处理空值输入。
proretset bool   函数是否返回一个集合(即,指定数据类型的多个值)
provolatile char   provolatile说明函数是仅仅只依赖于它的输入参数,还是会被外部因素影响。 值i表示“不变的”函数,它对于相同的输入总是输出相同的结果。 值s表示“稳定的”函数,它的结果(对于固定输入)在一次扫描内不会变化。 值v表示“不稳定的”函数,它的结果在任何时候都可能变化(使用v也表示函数具有副作用,因此对它们的调用无法得到优化)
pronargs int2   输入参数的个数
prorettype oid pg_type.oid 返回值的数据类型
proargtypes oidvector pg_type.oid 一个函数参数的数据类型的数组。
proargnames text[]   一个函数参数的名字的数组。没有名字的参数在数组中设置为空字符串。如果没有一个参数有名字,这个域为空。
prosrc text   这个字段告诉函数处理器如何调用该函数。它可能是针对解释型语言的真实源码、一个链接符号、一个文件名,或任何其他取决于实现语言/调用约定的内容。
probin text   关于如何调用函数的附加信息。其解释是与语言相关的。
proacl aclitem[]   访问权限,详见GRANT和REVOKE

对于编译好的函数,包括内置函数和动态装载函数,prosrc包含函数的 C 语言名字(链接符号)。 所有其他已知的语言类型,prosrc包含函数的源码文本。 除了对于动态载入的C函数之外,probin不使用,对于动态载入的C函数,它给定了包含该函数的共享库文件的名称。

提交更正

译文有误、术语不当或页面显示问题,请到译文仓库 pgsty/pgdoc 报告译文问题。 英文原文本身的问题,请在当前版本的对应页面向上游反馈;上游不再修订已结束维护的版本。