pg_collation
#目錄 pg_collation
描述了可用的排序規則,它們本質上是從 SQL 名稱到作業系統區域設定類別的對映。有關更多資訊,請參閱 第 23.2 節。
表 52.12. pg_collation
列
列 型別 描述 |
---|
行識別符號 |
排序規則名稱(在名稱空間和編碼中唯一) |
包含此排序規則的名稱空間的 OID |
排序規則的所有者 |
排序規則的提供程式: |
排序規則是否是確定性的? |
排序規則適用的編碼,或 -1 表示適用於任何編碼 |
此排序規則物件的 |
此排序規則物件的 |
此排序規則物件的排序規則提供程式區域設定名稱。如果提供程式是 |
此排序規則物件的 ICU 排序規則規則 |
排序規則的提供程式特定版本。此版本在建立排序規則時記錄,然後在使用時進行檢查,以檢測可能導致資料損壞的排序規則定義中的更改。 |
請注意,此目錄的唯一鍵是(collname
、collencoding
、collnamespace
),而不僅僅是(collname
、collnamespace
)。PostgreSQL 通常會忽略所有 collencoding
不等於當前資料庫編碼或 -1 的排序規則,並且禁止建立與 collencoding
= -1 的條目具有相同名稱的新條目。因此,即使根據目錄定義不是唯一的,使用限定 SQL 名稱(schema
.name
)來標識排序規則就足夠了。定義目錄的方式是因為 initdb 在群集初始化時會用系統中所有可用區域設定的條目填充它,因此它必須能夠容納群集中可能使用的所有編碼的條目。
在 template0
資料庫中,建立編碼不匹配資料庫編碼的排序規則可能很有用,因為它們可以匹配後來從 template0
克隆的資料庫的編碼。目前這需要手動完成。
如果您在文件中發現任何不正確、與您對特定功能的體驗不符或需要進一步澄清的內容,請使用 此表單 報告文件問題。