このカタログは関数(またはプロシージャ)に関する情報を格納しています。 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 | 呼び出し引数が NULL 値 の場合には NULL 値を返す関数。その場合、その関数は実際にはまったく呼び出されません。 "厳格"ではない関数は NULL 値入力を取り扱えるようにしなければいけません。 | |
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 関数に対してその関数を保有する共有ライブラリファイルの名前を与える以外には使用されていません。