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

页面导航:首页 > 数据库 > PostgreSQL > PostgreSQL教程(十六):系统视图详解

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

来源:互联网 作者:脚本宝典 时间:2015-06-30 13:24 【

一、pg_tables:该视图提供了对有关数据库中每个表的有用信息地访问。名字类型引用描述schemanamenamepg_namespace.nspname包含表的模式名字。tablenamenamepg_class.relname表的名字。tableownernamepg_aut
一、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命令的效果将在事务回滚之后消失。一旦包围它的事务提交,这个效果将固化,直到会话结束。


Tags:

文章评论

最 近 更 新
热 点 排 行
Js与CSS工具
代码转换工具

<