PG_DATABASE
PG_DATABASE系统表存储关于可用数据库的信息。
名称 |
类型 |
描述 |
---|---|---|
datname |
name |
数据库名称。 |
datdba |
oid |
数据库所有者,通常为其创建者。 |
encoding |
integer |
数据库的字符编码方式。 pg_encoding_to_char()可以将此编号转换为编码名称。 |
datcollate |
name |
数据库使用的排序顺序。 |
datctype |
name |
数据库使用的字符分类。 |
datistemplate |
boolean |
是否允许作为模板数据库。 |
datallowconn |
boolean |
如果为假,则没有用户可以连接到这个数据库。这个字段用于保护template0数据库不被更改。 |
datconnlimit |
integer |
该数据库上允许的最大并发连接数,-1表示无限制。 |
datlastsysoid |
oid |
数据库里最后一个系统OID 。 |
datfrozenxid |
xid32 |
用于跟踪该数据库是否需要为了防止事务ID重叠而进行清理。 为保持前向兼容,保留此字段,新增datfrozenxid64用于记录此信息。 |
dattablespace |
oid |
数据库的缺省表空间。 |
datcompatibility |
name |
数据库兼容模式。
|
datacl |
aclitem[] |
访问权限。 |
datfrozenxid64 |
xid |
用于跟踪该数据库是否需要为了防止事务ID重叠而进行清理。 |
应用实例
查看某数据库的所有者、兼容模式及访问权限:
1
|
SELECT datname,datdba,datcompatibility,datacl from pg_database where datname='database_name'; |
查看指定数据库的编码方式:
1
|
SELECT pg_encoding_to_char(encoding) FROM pg_database WHERE datname='database_name'; |