pg_class
#目錄 pg_class
描述了具有列或與表類似的其它物件。這包括索引(但請參閱 pg_index
)、序列(但請參閱 pg_sequence
)、檢視、物化檢視、複合型別和 TOAST 表;請參閱 relkind
。在下面的描述中,當我們指所有這些型別的物件時,我們稱之為“關係”。並非 pg_class
的所有列對於所有關係型別都有意義。
表 52.11. pg_class
列
列 型別 描述 |
---|
行識別符號 |
表、索引、檢視等的名稱。 |
包含此關係的名字空間的 OID。 |
如果存在,則此錶行型別對應的資料型別的 OID;對於沒有 |
對於型別化表,底層複合型別的 OID;對於所有其他關係,此值為零。 |
關係的屬主。 |
訪問此表或索引所用的訪問方法。如果關係是序列或沒有磁碟檔案,則此欄位無意義;但對於分割槽表,如果設定了此欄位,則在確定分割槽建立時使用的訪問方法時,它會覆蓋 |
此關係磁碟檔案的名稱;零表示這是一個“對映的”關係,其磁碟檔名由底層狀態決定。 |
儲存此關係的表空間。如果為零,則表示使用資料庫的預設表空間。如果關係沒有磁碟檔案,則此欄位無意義;但對於分割槽表,這是建立分割槽時使用的表空間(當在建立命令中未指定時)。 |
此表磁碟表示的大小(以頁為單位,每頁大小為 |
表中的活動行數。這只是規劃器使用的估算值。它由 |
表可見性對映中標記為“all-visible”(全部可見)的頁數。這只是規劃器使用的估算值。它由 |
表可見性對映中標記為“all-frozen”(全部凍結)的頁數。這只是用於觸發自動 vacuum 的估算值。它也可以與 |
與此表關聯的 TOAST 表的 OID,如果沒有則為零。TOAST 表將大的屬性 “離線” 儲存在輔助表中。 |
如果這是一個表並且它有(或最近有過)任何索引,則為真。 |
如果此表在群集的所有資料庫之間共享,則為真。只有某些系統目錄(如 |
|
|
關係中的使用者列數(不包括系統列)。 |
表中 |
如果表有(或曾經有)規則,則為真;請參閱 |
如果表有(或曾經有)觸發器,則為真;請參閱 |
如果表或索引有(或曾經有過)任何繼承子項或分割槽,則為真。 |
如果啟用了行級安全性,則為真;請參閱 |
如果行級安全性(啟用時)也適用於表屬主,則為真;請參閱 |
如果關係已填充,則為真(對於除某些物化檢視之外的所有關係,此值都為真)。 |
用於為行形成“複製標識”的列: |
如果表或索引是分割槽,則為真。 |
對於在需要表重寫(rewrite)的 DDL 操作期間寫入的新關係,此欄位包含原始關係的 OID;否則為零。該狀態僅在內部可見;對於使用者可見的關係,此欄位永遠不應包含除零以外的任何內容。 |
此表中的所有早於此事務 ID 的事務 ID 都已替換為永久(“已凍結”)事務 ID。這用於跟蹤表是否需要 vacuum 以防止事務 ID 迴繞或允許 |
此表中的所有早於此多事務 ID 的多事務 ID 都已替換為事務 ID。這用於跟蹤表是否需要 vacuum 以防止多事務 ID 迴繞或允許 |
訪問許可權;有關詳細資訊,請參閱 第 5.8 節 |
訪問方法特定的選項,格式為“keyword=value”字串。 |
如果表是分割槽(請參閱 |
pg_class
中的幾個布林標誌是惰性維護的:如果它們的狀態正確,則保證為真,但當條件不再滿足時,可能不會立即重置為假。例如,relhasindex
由 CREATE INDEX
設定,但從不被 DROP INDEX
清除。相反,如果 VACUUM
發現表沒有索引,它就會清除 relhasindex
。這種安排可以避免競態條件並提高併發性。
如果您在文件中看到任何不正確、與您在使用特定功能時的經驗不符或需要進一步澄清的內容,請使用 此表單 報告文件問題。