历史版本。 PostgreSQL 8.1 已结束支持。 请参阅 当前版本手册.
42.26. pg_pltemplate #
目录pg_pltemplate存储过程语言的“模板”信息。有了语言模板,就可以用简单的CREATE LANGUAGE命令在特定数据库中创建该语言,无需指定实现细节。
与大多数系统目录不同,pg_pltemplate由一个集簇中的所有数据库共享:每个集簇只有一份pg_pltemplate,而不是每个数据库各有一份。这样,每个数据库都可以在需要时访问这些信息。
表 42.26. pg_pltemplate 列
| 名称 | 类型 | 描述 | 引用 |
|---|---|---|---|
tmplname | name | 此模板所对应的语言名称 | |
tmpltrusted | boolean | 如果该语言被视为可信语言,则为真 | |
tmplhandler | text | 调用处理器函数的名称 | |
tmplvalidator | text | 验证器函数的名称;如果没有则为空 | |
tmpllibrary | text | 实现该语言的共享库的路径 | |
tmplacl | aclitem[] | 模板的访问权限(实际上未使用) |
目前没有任何命令可以操纵过程语言模板;要更改内置信息,超级用户必须使用普通的 INSERT、DELETE 或 UPDATE 命令修改此表。PostgreSQL的将来版本很可能提供以更干净的方式更改这些条目的命令。
实现之后,tmplacl字段将为模板本身(即使用它创建语言的权限)提供访问控制,而不是为由模板创建的语言提供访问控制。