Hvis du har brug for at finde de tegnsæt, der er tilgængelige i din MariaDB-installation, så tjek følgende to metoder.
SHOW CHARACTER SET
Erklæring
SHOW CHARACTER SET
statement er en hurtig og nem måde at returnere alle de tegnsæt, der er tilgængelige i MariaDB. Du kan bruge dette alene til at returnere alle sammenstillinger eller filtrere resultaterne med en LIKE
og/eller WHERE
klausul.
Eksempel:
SHOW CHARACTER SET LIKE 'latin%';
Resultat:
+---------+-----------------------------+-------------------+--------+ | 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 | +---------+-----------------------------+-------------------+--------+
I dette tilfælde indsnævrede jeg resultaterne til kun de tegnsæt, der starter med latin
.
Bemærk, at vi kan inkludere LIKE
klausul umiddelbart efter SHOW CHARACTER SET
tekst. Når vi gør dette, angiver det, hvilke sorteringsnavne der skal matche.
Her er et andet eksempel, hvor jeg bruger både WHERE
klausulen og LIKE
klausulen, samt OR
operatør:
SHOW CHARACTER SET
WHERE Maxlen LIKE '3'
OR Description LIKE '%Japanese%';
Resultat:
+---------+---------------------------+---------------------+--------+ | 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 | +---------+---------------------------+---------------------+--------+
information_schema.CHARACTER_SETS
Tabel
information_schema.CHARACTER_SETS
tabel indeholder en komplet liste over understøttede tegnsæt i MariaDB. Dette er den samme liste som SHOW CHARACTER_SETS
vender tilbage.
Derfor kan vi forespørge i denne tabel for at returnere de tegnsæt, vi ønsker at returnere. Vi kan også indsnævre kolonnerne til kun dem, vi er interesserede i.
Eksempel:
SELECT *
FROM information_schema.CHARACTER_SETS
WHERE CHARACTER_SET_NAME LIKE 'utf%'
AND MAXLEN = '4';
Resultat:
+--------------------+----------------------+------------------+--------+ | 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 | +--------------------+----------------------+------------------+--------+
Som du kan se, returnerer den de samme kolonner, som SHOW CHARACTER SETS
erklæring returnerer.
Givet dette bruger standard SQL SELECT
statement, kan vi tilpasse vores resultater på en lang række måder. Vi kan også reducere de returnerede kolonner, slå tabellen sammen med andre tabeller osv.
Her er et eksempel på reduktion af de returnerede kolonner:
SELECT
CHARACTER_SET_NAME,
DESCRIPTION
FROM information_schema.CHARACTER_SETS
WHERE CHARACTER_SET_NAME LIKE 'utf%'
AND MAXLEN = '4';
Resultat:
+--------------------+------------------+ | CHARACTER_SET_NAME | DESCRIPTION | +--------------------+------------------+ | utf8mb4 | UTF-8 Unicode | | utf16 | UTF-16 Unicode | | utf16le | UTF-16LE Unicode | | utf32 | UTF-32 Unicode | +--------------------+------------------+