PostgreSQL中文學習手冊(系統資料表)

來源:互聯網
上載者:User

一、pg_class:

    該系統資料表記錄了資料表、索引(仍然需要參閱pg_index)、序列、視圖、複合類型和一些特殊關聯類型的中繼資料。注意:不是所有欄位對所有物件類型都有意義。

名字 類型 引用 描述
relname name   資料類型名字。
relnamespace oid pg_namespace.oid 包含這個對象的名字空間(模式)的OI。
reltype oid pg_type.oid 對應這個表的行類型的資料類型。
relowner oid pg_authid.oid 對象的所有者。
relam oid pg_am.oid 對於索引對象,表示該索引的類型(B-tree,hash)。
relfilenode oid   Object Storage Service在磁碟上的檔案名稱,如果沒有則為0。
reltablespace oid pg_tablespace.oid 對象所在的資料表空間。如果為零,則表示使用該資料庫的預設資料表空間。(如果對象在磁碟上沒有檔案,這個欄位就沒有什麼意義)
relpages int4   該資料表或索引所佔用的磁碟頁面數量,查詢規劃器會藉助該值選擇最優路徑。
reltuples float4   表中行的數量,該值只是被規劃器使用的一個估計值。
reltoastrelid oid pg_class.oid 與此表關聯的TOAST表的OID,如果沒有為0。TOAST表在一個從屬表裡"離線"儲存大欄位。
reltoastidxid oid pg_class.oid 如果是TOAST表,該欄位為它索引的OID,如果不是TOAST表則為0。
relhasindex bool    如果這是一個資料表而且至少有(或者最近有過)一個索引,則為真。它是由CREATE INDEX設定的,但DROP INDEX不會立即將它清除。如果VACUUM發現一個表沒有索引,那麼它清理 relhasindex。
relisshared bool    如果該表在整個叢集中由所有資料庫共用,則為真。 
relkind char   r = 普通表,i = 索引,S = 序列,v = 視圖, c = 複合類型,s = 特殊,t = TOAST表
relnatts int2   資料表中使用者欄位的數量(除了系統欄位以外,如oid)。在pg_attribute裡肯定有相同數目的資料行。見pg_attribute.attnum.
relchecks int2   表中檢查約束的數量,參閱pg_constraint表。
reltriggers int2   表中觸發器的數量;參閱pg_trigger表。
relhasoids bool   如果我們為對象中的每行都產生一個OID,則為真。
relhaspkey bool   如果該表存在主鍵,則為真。
relhasrules  bool   如表有規則就為真;參閱pg_rewrite表。
relhassubclass bool    如果該表有子表,則為真。
relacl aclitem[]   存取權限。

    見如下應用樣本:
    #查看指定表對象testtable的模式
    postgres=# SELECT relname,relnamespace,nspname FROM pg_class c,pg_namespace n WHERE relname = 'testtable' AND relnamespace = n.oid;
      relname   | relnamespace | nspname
    -------------+--------------+---------
     testtable   |         2200    | public
    (1 row)
    #查看指定表對象testtable的owner(即role)。
    postgres=# select relname,rolname from pg_class c,pg_authid au where relname = 'testtable' and relowner = au.oid;
      relname   | rolname
    -------------+----------
     testtable   | postgres
    (1 row)

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 下一頁

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.