[转]PostgreSQL教程(十六):系统视图详解
该视图提供了对有关数据库中每个表的有用信息地访问。
| 名字 | 类型 | 引用 | 描述 |
| 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命令的效果将在事务回滚之后消失。一旦包围它的事务提交,这个效果将固化,直到会话结束。
(原文地址:http://www.jb51.net/article/65394.htm)
[转]PostgreSQL教程(十六):系统视图详解的更多相关文章
- UI第十六节——UITabBarController详解
一.UITabBarController主要用来管理你提供的content view controllers,而每一个 content view controller则负责管理自己的view层级关系, ...
- [转]PostgreSQL教程:系统表详解
这篇文章主要介绍了PostgreSQL教程(十五):系统表详解,本文讲解了pg_class.pg_attribute.pg_attrdef.pg_authid.pg_auth_members.pg_c ...
- 无废话ExtJs 入门教程十六[页面布局:Layout]
无废话ExtJs 入门教程十六[页面布局:Layout] extjs技术交流,欢迎加群(201926085) 首先解释什么是布局: 来自百度词典的官方解释:◎ 布局 bùjú: [distributi ...
- ASP.NET MVC 5 学习教程:Edit方法和Edit视图详解
原文 ASP.NET MVC 5 学习教程:Edit方法和Edit视图详解 起飞网 ASP.NET MVC 5 学习教程目录: 添加控制器 添加视图 修改视图和布局页 控制器传递数据给视图 添加模型 ...
- 【译】ASP.NET MVC 5 教程 - 7:Edit方法和Edit视图详解
原文:[译]ASP.NET MVC 5 教程 - 7:Edit方法和Edit视图详解 在本节中,我们继续研究生成的Edit方法和视图.但在研究之前,我们先将 release date 弄得好看一点.打 ...
- RabbitMQ入门教程(十六):RabbitMQ与Spring集成
原文:RabbitMQ入门教程(十六):RabbitMQ与Spring集成 版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明. 本文链接:https: ...
- 重装Windows系统 入门详解 - 基础教程
重装Windows系统 入门详解 - 基础教程 JERRY_Z. ~ 2020 / 10 / 13 转载请注明出处!️ 目录 重装Windows系统 入门详解 - 基础教程 一.说明 二.具体步骤 ( ...
- Java基础学习总结(33)——Java8 十大新特性详解
Java8 十大新特性详解 本教程将Java8的新特新逐一列出,并将使用简单的代码示例来指导你如何使用默认接口方法,lambda表达式,方法引用以及多重Annotation,之后你将会学到最新的API ...
- (转)oracle视图详解
Oracle视图详解 一. 视图的定义 视图(view),也称虚表, 不占用物理空间,这个也是相对概念,因为视图本身的定义语句还是要存储在数据字典里的.视图只有逻辑定义.每次使用的时候,只是重新执 ...
随机推荐
- Android 之 应用未捕获异常处理
最近开发一款低功耗蓝牙通讯的 Android 应用,安装使用时多次出现“ 抱歉,xxx已停止 ”.现在安装Android系统的手机版本和设备千差万别,在模拟器上运行良好的程序安装到某款手机上说不定就出 ...
- hibernate update 只更新部分字段的3种方法(其实我只想说第二种)
hibernate 中如果直接使用Session.update(Object o);会把这个表中的所有字段更新一遍. 比如: public class Teacher Test { @Test pub ...
- C++ 第八课 标准c字符和字符串
atof() 将字符串转换成浮点数 atoi() 将字符串转换成整数 atol() 将字符串转换成长整型数 isalnum() 当字母或数字字符时, 返回真值 isalpha() 当字母字符时, 返回 ...
- C#中添加三个线程同时启动执行某一方法,并依次调用某方法中的循环打印输。
添加三个线程同时启动执行某一方法,并依次调用某方法中的打印输:ABC ABC ABC ABC 实现代码如下: using System; using System.Collections.Generi ...
- POSTGRESQL 查看用户使用情况以及杀掉相应的进程
一.查看哪些用户在链接数据库 select * from pg_stat_activity ; 这里的pg_stat_activity其实是一个视图,它的定义可以在postgres这个数据库里面的视图 ...
- Java通过Fork/Join来优化并行计算
Java代码: package Threads; import java.util.concurrent.ForkJoinPool; import java.util.concurrent.Recur ...
- Android开发经典笔试面试题汇总(持续更新中)
1.我们都知道Handler是线程与Activity通信的桥梁,假设线程处理不当.你的机器就会变得非常慢,那么线程销毁的方法是:(A) A. onDestroy() B. onClear() C. o ...
- linux C++ 莫名奇异的段错误(segmentation fault),无法调用其他函数
进来在linux下开发C++项目,遇到了非常奇怪的bug. 项目须要多线程实现,在写好代码后,每当执行到线程函数内部,当内部调用其他函数如printf.fopen等时就会提示段错误(segmentat ...
- 〖Linux〗Shell十进制数值转换十六进制
dec2hex(){ printf } a=$(dec2hex ) echo $a
- Xamarin.Android服务的实现
一.服务的生命周期 服务与活动一样,在它的整个生命周期中存在着一些事件,下图可以很好解释整个过程以及涉及到的方法: 在真实的使用中,Service来还包含一个OnBind方法,并且必须要使用该方法,但 ...