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

 更新时间:2015年05月04日 14:38:11   投稿:junjie  
这篇文章主要介绍了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命令的效果将在事务回滚之后消失。一旦包围它的事务提交,这个效果将固化,直到会话结束。

相关文章

  • PostgreSQL+GeoHash地图点位聚合实现代码

    PostgreSQL+GeoHash地图点位聚合实现代码

    这篇文章主要介绍了PostgreSQL+GeoHash地图点位聚合,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2023-07-07
  • 详解PostgreSQL中实现数据透视表的三种方法

    详解PostgreSQL中实现数据透视表的三种方法

    数据透视表(Pivot Table)是进行数据汇总、分析、浏览和展示的强大工具,可以帮助我们了解数据中的对比情况、模式和趋势,是数据分析师和运营人员必备技能之一,本给大家介绍PostgreSQL中实现数据透视表的三种方法,需要的朋友可以参考下
    2024-04-04
  • PostgreSQL教程(一):数据表详解

    PostgreSQL教程(一):数据表详解

    这篇文章主要介绍了PostgreSQL教程(一):数据表详解表的定义、系统字段、表的修改、表的权限等4大部份内容,内容种包括表的创建、删除、修改、字段的修改、删除、主键和外键、约束添加修改删除等,本文讲解了,需要的朋友可以参考下
    2015-05-05
  • postgresql数据库连接数和状态查询操作

    postgresql数据库连接数和状态查询操作

    这篇文章主要介绍了postgresql数据库连接数和状态查询操作,具有很好的参考价值,对大家有所帮助。一起跟随小编过来看看吧
    2021-02-02
  • PostgreSQL将数据加载到buffer cache中操作方法

    PostgreSQL将数据加载到buffer cache中操作方法

    这篇文章主要介绍了PostgreSQL将数据加载到buffer cache中,我们可以使用pg_prewarm插件来将指定的表加载到OS Buffer或者pg shared buffer中,具体操作方法跟随小编一起看看吧
    2021-04-04
  • PostgreSQL出现死锁该如何解决

    PostgreSQL出现死锁该如何解决

    昨天在对一张表执行一条update语句的时候,没有修改成功,直接终止执行,就疯狂点击执行,执行了很多次这条语句导致了表被死锁了,这篇文章主要给大家介绍了关于PostgreSQL出现死锁该如何解决的相关资料,需要的朋友可以参考下
    2022-05-05
  • PostgreSQL查找并删除重复数据的方法总结

    PostgreSQL查找并删除重复数据的方法总结

    这篇文章主要给大家介绍了PostgreSQL查找并删除重复数据的方法,文章通过代码示例介绍的非常详细,对大家的学习或工作有一点的帮助,需要的朋友可以参考下
    2023-10-10
  • PostgreSQL数据库迁移部署实战教程

    PostgreSQL数据库迁移部署实战教程

    这篇文章主要介绍了PostgreSQL数据库迁移部署实战教程,由于项目本身就是基于PostgreSQL数据库构建的,因此数据库迁移将变得十分便捷,接下来,我将简要介绍我们的迁移步骤,需要的朋友可以参考下
    2023-07-07
  • postgresql 利用fdw来实现不同数据库之间数据互通(推荐)

    postgresql 利用fdw来实现不同数据库之间数据互通(推荐)

    这篇文章主要介绍了postgresql 利用fdw来实现不同数据库之间数据互通,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-02-02
  • Postgresql开启远程访问的步骤全纪录

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

    postgre一般默认为本地连接,不支持远程访问,所以如果要开启远程访问,需要更改安装文件的配置。下面这篇文章主要给大家介绍了关于Postgresql开启远程访问的相关资料,需要的朋友可以参考借鉴,下面来一起看看吧。
    2018-03-03

最新评论