Se você precisar encontrar os conjuntos de caracteres disponíveis em sua instalação do MariaDB, confira os dois métodos a seguir.
O SHOW CHARACTER SET
Declaração
O
SHOW CHARACTER SET
A instrução é uma maneira rápida e fácil de retornar todos os conjuntos de caracteres disponíveis no MariaDB. Você pode usar isso sozinho para retornar todos os agrupamentos ou filtrar os resultados com um LIKE
e/ou WHERE
cláusula. Exemplo:
SHOW CHARACTER SET LIKE 'latin%';
Resultado:
+---------+-----------------------------+-------------------+--------+ | Charset | Description | Default collation | Maxlen | +---------+-----------------------------+-------------------+--------+ | latin1 | cp1252 West European | latin1_swedish_ci | 1 | | latin2 | ISO 8859-2 Central European | latin2_general_ci | 1 | | latin5 | ISO 8859-9 Turkish | latin5_turkish_ci | 1 | | latin7 | ISO 8859-13 Baltic | latin7_general_ci | 1 | +---------+-----------------------------+-------------------+--------+
Nesse caso, reduzi os resultados apenas aos conjuntos de caracteres que começam com
latin
. Observe que podemos incluir o
LIKE
cláusula imediatamente após o SHOW CHARACTER SET
texto. Quando fazemos isso, ele indica quais nomes de agrupamento devem ser correspondidos. Aqui está outro exemplo onde eu uso tanto o
WHERE
cláusula e o LIKE
cláusula, bem como o OR
operador:SHOW CHARACTER SET
WHERE Maxlen LIKE '3'
OR Description LIKE '%Japanese%';
Resultado:
+---------+---------------------------+---------------------+--------+ | Charset | Description | Default collation | Maxlen | +---------+---------------------------+---------------------+--------+ | ujis | EUC-JP Japanese | ujis_japanese_ci | 3 | | sjis | Shift-JIS Japanese | sjis_japanese_ci | 2 | | utf8 | UTF-8 Unicode | utf8_general_ci | 3 | | cp932 | SJIS for Windows Japanese | cp932_japanese_ci | 2 | | eucjpms | UJIS for Windows Japanese | eucjpms_japanese_ci | 3 | +---------+---------------------------+---------------------+--------+
O information_schema.CHARACTER_SETS
Tabela
O
information_schema.CHARACTER_SETS
table contém uma lista completa de conjuntos de caracteres suportados no MariaDB. Esta é a mesma lista que SHOW CHARACTER_SETS
retorna. Portanto, podemos consultar esta tabela para retornar os conjuntos de caracteres que queremos retornar. Também podemos restringir as colunas apenas àquelas em que estamos interessados.
Exemplo:
SELECT *
FROM information_schema.CHARACTER_SETS
WHERE CHARACTER_SET_NAME LIKE 'utf%'
AND MAXLEN = '4';
Resultado:
+--------------------+----------------------+------------------+--------+ | CHARACTER_SET_NAME | DEFAULT_COLLATE_NAME | DESCRIPTION | MAXLEN | +--------------------+----------------------+------------------+--------+ | utf8mb4 | utf8mb4_general_ci | UTF-8 Unicode | 4 | | utf16 | utf16_general_ci | UTF-16 Unicode | 4 | | utf16le | utf16le_general_ci | UTF-16LE Unicode | 4 | | utf32 | utf32_general_ci | UTF-32 Unicode | 4 | +--------------------+----------------------+------------------+--------+
Como você pode ver, ele retorna as mesmas colunas que o
SHOW CHARACTER SETS
declaração retorna. Dado isso, usa o SQL padrão
SELECT
declaração, podemos personalizar nossos resultados de várias maneiras. Também podemos reduzir as colunas retornadas, unir a tabela com outras tabelas, etc. Aqui está um exemplo de redução das colunas retornadas:
SELECT
CHARACTER_SET_NAME,
DESCRIPTION
FROM information_schema.CHARACTER_SETS
WHERE CHARACTER_SET_NAME LIKE 'utf%'
AND MAXLEN = '4';
Resultado:
+--------------------+------------------+ | CHARACTER_SET_NAME | DESCRIPTION | +--------------------+------------------+ | utf8mb4 | UTF-8 Unicode | | utf16 | UTF-16 Unicode | | utf16le | UTF-16LE Unicode | | utf32 | UTF-32 Unicode | +--------------------+------------------+