Como exibir e definir a codificação de caracteres do banco de dados?
Exibir a codificação de caracteres do banco de dados
Use o parâmetro server_encoding para verificar a codificação do conjunto de caracteres do banco de dados atual. Por exemplo, a codificação de caracteres do banco de dados music é UTF8.
1 2 3 4 5 |
music=> SHOW server_encoding; server_encoding ----------------- UTF8 (1 row) |
Definir a codificação de caracteres do banco de dados
GaussDB(DWS) não suporta a modificação do formato de codificação de caracteres de um banco de dados criado.
Se você precisar especificar o formato de codificação de caracteres de um banco de dados, use template0 e a sintaxe CREATE DATABASE para criar um banco de dados. Para tornar seu banco de dados compatível com a maioria dos caracteres, é aconselhável usar a codificação UTF8 ao criar um banco de dados.
Sintaxe CREATE DATABASE
1 2 3 4 5 6 7 8 |
CREATE DATABASE database_name [ [ WITH ] { [ OWNER [=] user_name ] | [ TEMPLATE [=] template ] | [ ENCODING [=] encoding ] | [ LC_COLLATE [=] lc_collate ] | [ LC_CTYPE [=] lc_ctype ] | [ DBCOMPATIBILITY [=] compatibility_type ] | [ CONNECTION LIMIT [=] connlimit ]}[...] ]; |
- TEMPLATE [ = ] template
Indica o nome do modelo, ou seja, o nome do modelo a ser usado para criar o banco de dados. GaussDB(DWS) cria um banco de dados copiando um modelo de banco de dados. GaussDB(DWS) tem dois bancos de dados de modelos iniciais template0 e template1 e um banco de dados de usuário padrão gaussdb.
Intervalo de valores: um nome de banco de dados existente. Se isso não for especificado, o sistema copia template1 por padrão. Seu valor não pode ser gaussdb.
Atualmente, os modelos de banco de dados não podem conter sequências. Se houver sequências na biblioteca de modelos, a criação do banco de dados falhará.
- ENCODING [ = ] encoding
Codificação de caracteres usada pelo banco de dados. O valor pode ser uma cadeia de caracteres (por exemplo, SQL_ASCII') ou um número inteiro.
Se este parâmetro não for especificado, a codificação do banco de dados de modelo é usada por padrão. A codificação dos bancos de dados de modelo template0 e template1 depende do sistema operacional por padrão. A codificação de caracteres de template1 não pode ser alterada. Para alterar a codificação, use template0 para criar um banco de dados.
Intervalo de valores: GBK, UTF8 e Latin1
A codificação do conjunto de caracteres do novo banco de dados deve ser compatível com as configurações locais (LC_COLLATE e LC_CTYPE).
Exemplos
Crie banco de dados music usando UTF8 (o tipo de codificação local também é UTF8).
1
|
CREATE DATABASE music ENCODING 'UTF8' template = template0; |