您的位置:寻梦网首页编程乐园数据库PostgreSQL 7.2 Documentation

3.15. pg_proc

这个表存储关于函数(或过程)的信息. CREATE FUNCTION 程序员手册 包含一些域的更多信息.

Table 3-15. pg_proc 字段

名字 类型 引用 描述
proname name   函数名字
proowner int4 pg_shadow.usesysid 函数所有者(创建者)
prolang oid pg_language.oid 这个函数的实现语言或调用接口
proisinh bool   未用
proistrusted bool   不能工作
proiscachable bool   函数对相同输入返回相同结果
proisstrict bool   如果任何调用参数是空,那么函数返回空.这时函数实际上连调用都不调用. 不是 "strict" 的函数必须准备处理空输入.
pronargs int2   参数数目
proretset bool   函数返回结果集(也就是声明的数据类型的多个数值)
prorettype oid pg_type.oid 返回值的数据类型(如果函数不返回值则为0)
proargtypes oidvector pg_type.oid 带数据类型的函数参数的向量
probyte_pct int4   死代码
properbyte_cpu int4   死代码
propercall_cpu int4   死代码
prooutin_ratio int4   死代码
prosrc text   这个字段告诉函数句柄如何调用该函数.它实际上对于解释语言来说就是 函数的源程序,或者一个链接符号,一个文件名,或者是任何其他的东西, 具体取决于语言/调用习惯的实现.
probin bytea   关于如何调用该函数的附加信息.同样,其含义也是和语言相关的.

目前,如果是编译函数的话,prosrc 包含函数的 C 语言名字(链接符号), 包括内建函数和动态装载的函数.对于所有其它语言类型,prosrc 包含该 函数的源文本.

目前,probin 除了用于动态装载的 C 函数之外没有其它用途, 这个时候它给出包含给函数的共享库的文件名.