服务器之家:专注于服务器技术及软件下载分享
分类导航

Mysql|Sql Server|Oracle|Redis|MongoDB|PostgreSQL|Sqlite|DB2|mariadb|Access|数据库技术|

服务器之家 - 数据库 - PostgreSQL - PostgreSQL教程(十六):系统视图详解

PostgreSQL教程(十六):系统视图详解

2020-04-28 14:28PostgreSQL教程网 PostgreSQL

这篇文章主要介绍了PostgreSQL教程(十六):系统视图详解,本文讲解了pg_tables、pg_indexes、pg_views、pg_user、pg_roles、pg_rules、pg_settings等视图的作用和字段含义等内容,需要的朋友可以参考下

一、pg_tables:

    该视图提供了对有关数据库中每个表的有用信息地访问。

 

名字

类型

引用

描述

schemaname

name

pg_namespace.nspname

包含表的模式名字。

tablename

name

pg_class.relname

表的名字。

tableowner

name

pg_authid.rolname

表的所有者的名字。

tablespace

name

pg_tablespace.spcname

包含表的表空间名字(如果是数据库缺省,则为 NULL)。

hasindexes

bool

pg_class.relhasindex

如果表拥有(或者最近拥有)任何索引,则为真。

hasrules

bool

pg_class.relhasrules

如果表存在规则,则为真。

hastriggers

bool

pg_class.reltriggers

如果表有触发器,则为真。

 

二、pg_indexes:

    该视图提供对数据库中每个索引的有用信息的访问。

 

名字

类型

引用

描述

schemaname

name

pg_namespace.nspname

包含表和索引的模式的名字。

tablename

name

pg_class.relname

索引所在表的名字。

indexname

name

pg_class.relname

索引的名字。

tablespace

name

pg_tablespace.spcname

包含索引的表空间名字(如果是数据库缺省,则为NULL)。

indexdef

text

 

索引定义(一个重建的创建命令)。

 

三、pg_views:

    该视图提供了对数据库里每个视图的有用信息的访问途径。

 

名字

类型

引用

描述

schemaname

name

pg_namespace.nspname

包含此视图的模式名字。

viewname

name

pg_class.relname

视图的名字。

viewowner

name

pg_authid.rolname

视图的所有者的名字。

definition

text

 

视图定义(一个重建的SELECT查询)。

 

四、pg_user:

    该视图提供了对数据库用户的相关信息的访问。 这个视图只是pg_shadow表的公众可读的部分的视图化,但是不包含口令字段。

 

名字

类型

引用

描述

usename

name

 

用户名。

usesysid

int4

 

用户ID(用于引用这个用户的任意数字)。

usecreatedb

bool

 

用户是否可以创建数据库。

usesuper

bool

 

用户是否是一个超级用户。

usecatupd

bool

 

用户是否可以更新系统表。(即使超级用户也不能这么干,除非这个字段为真。)

passwd

text

 

口令(可能加密了)。

valuntil

abstime

 

口令失效的时间(只用于口令认证)。

useconfig

text[]

 

运行时配置参数的会话缺省。

 

五、pg_roles:

    该视图提供访问数据库角色有关信息的接口。这个视图只是pg_authid表的公开可读部分的视图化,同时把口令字段用空白填充。

 

名字

类型

引用

描述

rolname

name

 

角色名。

rolsuper

bool

 

是否有超级用户权限的角色。

rolcreaterole

bool

 

是否可以创建更多角色的角色。

rolcreatedb

bool

 

是否可以创建数据库的角色。

rolcatupdate

bool

 

是否可以直接更新系统表的角色。

rolcanlogin

bool

 

如果为真,表示是可以登录的角色。

rolpassword

text

 

不是口令(总是 ********)。

rolvaliduntil

timestamptz

 

口令失效日期(只用于口令认证);如果没有失效期,为NULL。

rolconfig

text[]

 

运行时配置变量的会话缺省。

 

六、pg_rules:

    该视图提供对查询重写规则的有用信息访问的接口。

 

名字

类型

引用

描述

schemaname

name

pg_namespace.nspname

包含表的模式的名字。

tablename

name

pg_class.relname

规则施加影响的表的名字。

rulename

name

pg_rewrite.rulename

规则的名字。

definition

text

 

规则定义(一个重新构造的创建命令)。

 

七、pg_settings:

    该视图提供了对服务器运行时参数的访问。它实际上是SHOW和SET命令的另外一种方式。它还提供一些用SHOW不能直接获取的参数的访问,比如最大和最小值。

 

名字

类型

引用

描述

name

text

 

运行时配置参数名。

setting

text

 

参数的当前值。

category

text

 

参数的逻辑组。

short_desc

text

 

参数的一个简短的描述。

extra_desc

text

 

有关参数的额外的、更详细的信息。

context

text

 

设置这个参数的值要求的环境。

vartype

text

 

参数类型(bool、integer、real和string)。

source

text

 

当前参数值的来源。

min_val

text

 

该参数允许的最小值(非数字值为NULL)。

max_val

text

 

该参数允许的最大值(非数字值为NULL)。  

 

    我们不能对pg_settings视图进行插入或者删除, 只能更新。对pg_settings中的一行进行UPDATE等效于在该命名参数上执行SET命令。这个修改值影响当前会话使用的数值。如果在一个最后退出的事务中发出了UPDATE命令,那么UPDATE命令的效果将在事务回滚之后消失。一旦包围它的事务提交,这个效果将固化,直到会话结束。

延伸 · 阅读

精彩推荐
  • PostgreSQLpostgresql 数据库中的数据转换

    postgresql 数据库中的数据转换

    postgres8.3以后,字段数据之间的默认转换取消了。如果需要进行数据变换的话,在postgresql数据库中,我们可以用"::"来进行字段数据的类型转换。...

    postgresql教程网12482021-10-08
  • PostgreSQLpostgresql 中的to_char()常用操作

    postgresql 中的to_char()常用操作

    这篇文章主要介绍了postgresql 中的to_char()常用操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...

    J符离13432021-04-12
  • PostgreSQL分布式 PostgreSQL之Citus 架构

    分布式 PostgreSQL之Citus 架构

    节点 Citus 是一种 PostgreSQL 扩展,它允许数据库服务器(称为节点)在“无共享(shared nothing)”架构中相互协调。这些节点形成一个集群,允许 PostgreSQL 保存比单...

    未知802023-05-07
  • PostgreSQLRDS PostgreSQL一键大版本升级技术解密

    RDS PostgreSQL一键大版本升级技术解密

    一、PostgreSQL行业位置 (一)行业位置 在讨论PostgreSQL(下面简称为PG)在整个数据库行业的位置之前,我们先看一下阿里云数据库在全球的数据库行业里的...

    未知1192023-05-07
  • PostgreSQLPostgreSQL标准建表语句分享

    PostgreSQL标准建表语句分享

    这篇文章主要介绍了PostgreSQL标准建表语句分享,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...

    码上得天下7962021-02-27
  • PostgreSQLPostgresql开启远程访问的步骤全纪录

    Postgresql开启远程访问的步骤全纪录

    postgre一般默认为本地连接,不支持远程访问,所以如果要开启远程访问,需要更改安装文件的配置。下面这篇文章主要给大家介绍了关于Postgresql开启远程...

    我勒个去6812020-04-30
  • PostgreSQLPostgresql查询效率计算初探

    Postgresql查询效率计算初探

    这篇文章主要给大家介绍了关于Postgresql查询效率计算的相关资料,文中通过示例代码介绍的非常详细,对大家学习或者使用Postgresql具有一定的参考学习价...

    轨迹4622020-05-03
  • PostgreSQL深入理解PostgreSQL的MVCC并发处理方式

    深入理解PostgreSQL的MVCC并发处理方式

    这篇文章主要介绍了深入理解PostgreSQL的MVCC并发处理方式,文中同时介绍了MVCC的缺点,需要的朋友可以参考下 ...

    PostgreSQL教程网3622020-04-25