pg_proc #目录pg_proc存放有关函数、过程、聚合函数以及窗口函数(共称为例程)的信息。更多信息请参考CREATE FUNCTION、CREATE PROCEDURE和Section 36.3。
如果prokind显示该条目用于一个聚合函数,在pg_aggregate中应该有一个相匹配的行。
Table 50.38. pg_proc 列
|
列类型 描述 |
|---|
|
行标识符 |
|
函数的名字 |
|
函数所属的名字空间的OID |
|
函数的拥有者 |
|
实现语言或该函数的调用接口 |
|
估计的执行代价(以cpu_operator_cost为单位),如果 |
|
估计的结果行数量(如果 |
|
可变数组参数的元素的数据类型,如果函数没有可变参数则为0 |
|
对于该函数的规划器支持函数(参见Section 36.11),如果没有则为零 |
|
|
|
函数是一个安全性定义者(即,一个“setuid”函数) |
|
该函数没有副作用。除返回值外,不会泄露任何关于参数的信息。任何可能因参数值而报错的函数都不是 leakproof。 |
|
当任一调用参数为 NULL 时,函数是否返回空值。在这种情况下,函数实际上根本不会被调用。非“strict”函数必须准备好处理空值输入。 |
|
函数是否返回一个集合(即,指定数据类型的多个值) |
|
|
|
|
|
输入参数的个数 |
|
具有默认值的参数个数 |
|
返回值的数据类型 |
|
一个函数参数的数据类型的数组。 这只包括输入参数(含 |
|
一个函数参数的数据类型的数组。 这包括所有参数(含 |
|
一个函数参数的模式的数组。这里包括: |
|
一个函数参数的名字的数组。没有名字的参数在数组中设置为空字符串。如果没有一个参数有名字,这个域为空。 注意这里的下标对应着 |
|
默认值的表达式树(按照 |
|
要应用转换的(来自函数的 |
|
这个字段告诉函数处理器如何调用该函数。它可能是针对解释型语言的真实源码、一个链接符号、一个文件名,或任何其他取决于实现语言/调用约定的内容。 |
|
关于如何调用函数的附加信息。其解释是与语言相关的。 |
|
预解析的 SQL 函数体。 当函数体采用 SQL 标准表示法给出,而不是作为字符串文本给出时,此字段用于 SQL 语言函数。 其他情况下为空。 |
|
函数对于运行时配置变量的本地设置值 |
|
访问权限,详见Section 5.8 |
对于编译好的函数,包括内置函数和动态装载函数,prosrc包含函数的 C 语言名字(链接符号)。 对于 SQL 语言函数,如果函数体以字符串形式给出,prosrc包含函数的源文本;但如果函数体采用 SQL 标准表示法给出,则prosrc不会被使用(通常是空字符串),而由prosqlbody保存预解析的定义。 所有其他已知的语言类型,prosrc包含函数的源码文本。 除了对于动态载入的C函数之外,probin为空,对于动态载入的C函数,它给定了包含该函数的共享库文件的名称。
如果您发现文档中有不正确的内容、与您使用特定功能的经验不符或需要进一步说明,请使用此表单来报告文档问题。