2024年9月26日: PostgreSQL 17 发布!
支持的版本:当前 (17) / 16 / 15 / 14 / 13 / 12
开发版本:devel
不支持的版本:11 / 10 / 9.6 / 9.5 / 9.4 / 9.3 / 9.2 / 9.1

35.7. character_sets #

视图 character_sets 标识当前数据库中可用的字符集。由于 PostgreSQL 不支持在一个数据库中使用多个字符集,因此此视图仅显示一个,即数据库编码。

请注意以下术语在 SQL 标准中的使用方式

字符集库

字符的抽象集合,例如 UNICODEUCSLATIN1。未作为 SQL 对象公开,但在此视图中可见。

字符编码形式

某个字符集库的编码。大多数较旧的字符集库只使用一种编码形式,因此它们没有单独的名称(例如,LATIN2 是适用于 LATIN2 集库的编码形式)。但是,例如 Unicode 具有 UTF8UTF16 等编码形式(并非所有都受 PostgreSQL 支持)。编码形式未作为 SQL 对象公开,但在此视图中可见。

字符集

一个命名的 SQL 对象,它标识字符集库、字符编码和默认排序规则。预定义的字符集通常与编码形式具有相同的名称,但用户可以定义其他名称。例如,字符集 UTF8 通常标识字符集库 UCS、编码形式 UTF8 和某些默认排序规则。

您可以将 PostgreSQL 中的 编码 视为字符集或字符编码形式。它们将具有相同的名称,并且在一个数据库中只能有一个。

表 35.5. character_sets

列类型

描述

character_set_catalog sql_identifier

字符集目前未实现为模式对象,因此此列为 null。

character_set_schema sql_identifier

字符集目前未实现为模式对象,因此此列为 null。

character_set_name sql_identifier

字符集的名称,目前实现为显示数据库编码的名称

character_repertoire sql_identifier

字符集库,如果编码为 UTF8,则显示 UCS,否则仅显示编码名称

form_of_use sql_identifier

字符编码形式,与数据库编码相同

default_collate_catalog sql_identifier

包含默认排序规则的数据库名称(如果有任何排序规则被识别,则始终为当前数据库)

default_collate_schema sql_identifier

包含默认排序规则的模式名称

default_collate_name sql_identifier

默认排序规则的名称。默认排序规则被识别为与当前数据库的 COLLATECTYPE 设置匹配的排序规则。如果没有这样的排序规则,则此列以及相关的模式和目录列为 null。


提交更正

如果您在文档中看到任何不正确的内容,与您对特定功能的体验不符,或者需要进一步澄清,请使用此表单报告文档问题。