多应用+插件架构,代码干净,二开方便,首家独创一键云编译技术,文档视频完善,免费商用码云13.8K 广告
# 47.35\. `pg_pltemplate` `pg_pltemplate`表为过程语言存储"模板"信息。 一个语言的模板允许该语言可以在某个数据库里使用简单的`CREATE LANGUAGE`命令创建, 而不需要声明实现细节。 和许多系统表不一样,`pg_pltemplate`是在集群里的所有数据库之间共享的: 每个集群只有一个`pg_pltemplate`的拷贝,而不是每个数据库一个。 这样就允许这些信息在需要时每个数据库都可以访问。 **Table 47-35\. `pg_pltemplate` 字段** | 名字 | 类型 | 描述 | | --- | --- | --- | | `tmplname` | `name` | 这个模板所应用的语言的名字 | | `tmpltrusted` | `boolean` | 如果语言被认为是可信的,则为真 | | `tmpldbacreate` | `boolean` | 如果语言可以通过数据库所有者创建则为真 | | `tmplhandler` | `text` | 调用处理器函数的名字 | | `tmplinline` | `text` | 匿名块处理器函数的名字,如果没有则为null | | `tmplvalidator` | `text` | 校验函数的名字,如果没有则为 NULL | | `tmpllibrary` | `text` | 实现语言的共享库的路径 | | `tmplacl` | `aclitem[]` | 模板的访问权限(未使用) | 目前还没有任何命令可以用于操作过程语言模板;要修改内置的信息, 超级用户必须使用普通的`INSERT`, `DELETE`, `UPDATE`命令修改该表。 > **Note:** 很有可能在将来的PostgreSQL版本中删除`pg_pltemplate`, 为了支持过程语言的信息保持在它们各自的扩展安装脚本中。