pg_pltemplate

PostgreSQL 8.4.1文書
前のページ | 巻戻し | 第 44章システムカタログ | 早送り | 次のページ

# 44.29. `pg_pltemplate`

`pg_pltemplate`カタログは手続き言語の"template"関する情報を格納します。手続き言語のテンプレートを使用することで、特定のデータベース内で単純な`CREATE LANGUAGE`コマンドにより言語が作成できます。 実装の詳細を指定する必要はありません。

多くのシステムカタログと異なり`pg_pltemplate`はクラスタの全てのデータベースに共有されています。データベースごとではなく、クラスタごとにただ1つの`pg_pltemplate`のコピーがあります。 これにより、それぞれのデータベースは、必要とされたときにデータにアクセスできます。

表 44-29. `pg_pltemplate`の列

名前 | 型 | 説明
--- | --- | ---
`tmplname` | `name` | このテンプレートのための言語の名前
`tmpltrusted` | `boolean` | 言語が信頼されている場合はTrue
`tmpldbacreate` | `boolean` | 言語がデータベース所有者により作成されているかもしれない場合はTrue
`tmplhandler` | `text` | 呼び出し側の関数の名前
`tmplvalidator` | `text` | 有効性検査関数の名前。無い場合はNULL
`tmpllibrary` | `text` | 言語を実装している共有ライブラリのパス
`tmplacl` | `aclitem[]` | テンプレートのアクセス権限（まだ未使用）

手続き言語のテンプレートを扱うコマンドは、今のところありません。 組み込まれた情報を変えるためにはスーパーユーザが、`INSERT`、`DELETE`もしくは`UPDATE`を使用してテーブルを変更する必要があります。 PostgreSQLの将来のリリースではもっと明確な方法でエントリを変えるようなコマンドが提供されるでしょう。

実装された場合は、`tmplacl`列が、テンプレートから作成された言語ではなく、テンプレート自身のアクセス制御を提供します（つまり、言語を作成する権利のことです）。

前のページ | ホーム | 次のページ
`pg_opfamily` | 上に戻る | `pg_proc`