名字 | 類型 | 引用 | 描述 |
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命令的效果將在事務回滾之后消失。一旦包圍它的事務提交,這個效果將固化,直到會話結束。