Om du behöver hitta teckenuppsättningarna som är tillgängliga i din MariaDB-installation, kolla in följande två metoder.
SHOW CHARACTER SET
Uttalande
SHOW CHARACTER SET
statement är ett snabbt och enkelt sätt att returnera alla teckenuppsättningar som finns tillgängliga i MariaDB. Du kan använda detta för att returnera alla sorteringar, eller filtrera resultaten med en LIKE
och/eller WHERE
klausul.
Exempel:
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 det här fallet har jag begränsat resultaten till bara de teckenuppsättningar som börjar med latin
.
Observera att vi kan inkludera LIKE
satsen omedelbart efter SHOW CHARACTER SET
text. När vi gör detta indikerar det vilka sorteringsnamn som ska matchas.
Här är ett annat exempel där jag använder både WHERE
satsen och LIKE
satsen, såväl som 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
Tabell
information_schema.CHARACTER_SETS
Tabellen innehåller en fullständig lista över teckenuppsättningar som stöds i MariaDB. Detta är samma lista som SHOW CHARACTER_SETS
returnerar.
Därför kan vi fråga den här tabellen för att returnera de teckenuppsättningar vi vill returnera. Vi kan också begränsa kolumnerna till bara de vi är intresserade av.
Exempel:
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 returnerar den samma kolumner som SHOW CHARACTER SET
uttalande returnerar.
Givet detta använder standard SQL SELECT
uttalande, kan vi anpassa våra resultat på ett stort antal sätt. Vi kan också minska antalet returnerade kolumner, sammanfoga tabellen med andra tabeller, etc.
Här är ett exempel på hur du kan minska antalet returnerade kolumner:
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 | +--------------------+------------------+