pg_language 登记编程语言,你可以用这些语言或接口写函数或者存储过程。参阅 CREATE LANGUAGE 和章36获取更多关于语言处理器的信息。
表43-20. pg_language 字段
名字 | 类型 | 引用 | 描述 |
---|---|---|---|
lanname | name | 语言的名字 | |
lanispl | bool | 对于内部语言而言是假(比如 SQL),对于用户定义的语言则是真。目前,pg_dump 仍然使用这个东西判断哪种语言需要转储,但是这些可能在将来被其它机制取代。 | |
lanpltrusted | bool | 如果这是可信语言则为真,意味着系统相信它不会被授予任何正常 SQL 执行环境之外的权限。只有超级用户可以创建不可信的语言。 | |
lanplcallfoid | oid | pg_proc.oid | 对于非内部语言,这是指向该语言处理器的引用,语言处理器是一个特殊函数,负责执行以某种语言写的所有函数。 |
lanvalidator | oid | pg_proc.oid | 这个字段引用一个语言校验器函数,它负责检查新创建的函数的语法和有效性。如果没有提供校验器,则为零。 |
lanacl | aclitem[] | 访问权限,参阅 GRANT 和 REVOKE 获取细节。 |