columns
#視窗 columns
包含資料庫中所有表格欄位(或視窗欄位)的資訊。系統欄位(ctid
等)不包含在內。只會顯示目前使用者有權存取的欄位(透過身為擁有者或擁有某些權限)。
表格 35.15. columns
欄位
欄位類型 描述 |
---|
包含表格的資料庫名稱(永遠是目前的資料庫) |
包含表格的綱要名稱 |
表格名稱 |
欄位名稱 |
欄位在表格中的序數位置(從 1 開始計數) |
欄位的預設表達式 |
如果欄位可能為可為空值,則為 |
欄位的資料類型,如果它是內建類型,則為 |
如果 |
如果 |
如果 |
如果 |
如果 |
如果 |
如果 |
適用於 PostgreSQL 中不可用的功能(請參閱 |
適用於 PostgreSQL 中不可用的功能 |
適用於 PostgreSQL 中不可用的功能 |
適用於 PostgreSQL 中不可用的功能 |
包含欄位定序的資料庫名稱(永遠是目前的資料庫),如果是預設值或欄位的資料類型不可定序,則為 null。 |
包含欄位定序的綱要名稱,如果是預設值或欄位的資料類型不可定序,則為 null。 |
欄位的定序名稱,如果是預設值或欄位的資料類型不可定序,則為 null。 |
如果欄位具有網域類型,則網域定義所在的資料庫名稱(永遠是目前的資料庫),否則為 null。 |
如果欄位具有網域類型,則網域定義所在的綱要名稱,否則為 null。 |
如果欄位具有網域類型,則網域名稱,否則為 null。 |
欄位資料類型(如果適用,則為網域的底層類型)定義所在的資料庫名稱(永遠是目前的資料庫) |
欄位資料類型(如果適用,則為網域的底層類型)定義所在的綱要名稱 |
欄位資料類型名稱(如果適用,則為網域的底層類型) |
適用於 PostgreSQL 中不可用的功能 |
適用於 PostgreSQL 中不可用的功能 |
適用於 PostgreSQL 中不可用的功能 |
永遠為 null,因為陣列在 PostgreSQL 中始終具有無限的最大基數 |
欄位資料類型描述符的識別符,在與該表格相關的資料類型描述符中是唯一的。這主要用於與此類識別符的其他實例進行聯結。(識別符的特定格式未定義,並且不保證在將來的版本中保持不變。) |
適用於 PostgreSQL 中不可用的功能 |
如果欄位是識別欄位,則為 |
如果欄位是識別欄位,則為 |
如果欄位是識別欄位,則為內部序列的起始值,否則為 null。 |
如果欄位是識別欄位,則為內部序列的增量,否則為 null。 |
如果欄位是識別欄位,則為內部序列的最大值,否則為 null。 |
如果欄位是識別欄位,則為內部序列的最小值,否則為 null。 |
如果欄位是識別欄位,則如果內部序列循環則為 |
如果欄位是產生的欄位,則為 |
如果欄位是產生的欄位,則為產生運算式,否則為 null。 |
如果欄位可更新,則為 |
由於資料類型可以在 SQL 中以多種方式定義,並且 PostgreSQL 包含定義資料類型的其他方式,因此它們在資訊綱要中的表示可能有些困難。欄位 data_type
應該識別欄位的底層內建類型。在 PostgreSQL 中,這表示類型是在系統目錄綱要 pg_catalog
中定義的。如果應用程式可以特別處理眾所周知的內建類型(例如,以不同的方式格式化數值類型或使用精度欄位中的資料),則此欄位可能很有用。欄位 udt_name
、udt_schema
和 udt_catalog
始終識別欄位的底層資料類型,即使欄位基於網域。(由於 PostgreSQL 將內建類型視為使用者定義的類型,因此內建類型也會出現在此處。這是 SQL 標準的擴充。)如果應用程式想要根據類型以不同的方式處理資料,則應使用這些欄位,因為在這種情況下,欄位是否真的基於網域並不重要。如果欄位基於網域,則網域的識別會儲存在欄位 domain_name
、domain_schema
和 domain_catalog
中。如果您想將欄位與其相關的資料類型配對,並將網域視為單獨的類型,則可以編寫 coalesce(domain_name, udt_name)
等。
如果您在文件中看到任何不正確、與您使用特定功能的經驗不符或需要進一步澄清的地方,請使用此表格回報文件問題。