Pokud potřebujete najít kolace, která jsou k dispozici ve vaší instalaci MariaDB, vyzkoušejte následující tři metody.
Položka SHOW COLLATIONS
Prohlášení
SHOW COLLATIONS
statement je rychlý a snadný způsob, jak vrátit všechna kolace dostupná v MariaDB. Toto můžete použít samostatně k vrácení všech porovnávání nebo filtrovat výsledky pomocí LIKE
a/nebo WHERE
doložka.
Příklad:
SHOW COLLATION LIKE 'latin7%';
Výsledek:
+-------------------------+---------+------+--- ------+----------+---------+| Řazení | Charset | Id | Výchozí | Sestaveno | Sortlen |+-------------------------+---------+------+---- -----+----------+---------+| latin7_estonian_cs | latin7 | 20 | | Ano | 1 || latin7_general_ci | latin7 | 41 | Ano | Ano | 1 || latin7_general_cs | latin7 | 42 | | Ano | 1 || latin7_bin | latin7 | 79 | | Ano | 1 || latin7_general_nopad_ci | latin7 | 1065 | | Ano | 1 || latin7_nopad_bin | latin7 | 1103 | | Ano | 1 |+-------------------------+---------+------+---- -----+----------+---------+
V tomto případě jsem zúžil výsledky pouze na kolace, která začínají latin7
.
Všimněte si, že můžeme zahrnout LIKE
klauzule bezprostředně za SHOW COLLATION
text. Když to uděláme, indikuje to, které názvy řazení se mají shodovat.
Zde je další příklad, kde používám obě WHERE
klauzule a LIKE
klauzule:
SHOW COLLATION
WHERE Sortlen LIKE '4'
AND Collation LIKE 'utf%';
Výsledek:
+---------------------+---------+-----+-------- -+----------+---------+| Řazení | Charset | Id | Výchozí | Sestaveno | Sortlen |+---------------------+---------+-----+---------- +----------+---------+| utf8_thai_520_w2 | utf8 | 578 | | Ano | 4 || utf8mb4_thai_520_w2 | utf8mb4 | 610 | | Ano | 4 || utf16_thai_520_w2 | utf16 | 674 | | Ano | 4 || utf32_thai_520_w2 | utf32 | 738 | | Ano | 4 |+---------------------+---------+-----+---------- +----------+---------+
Informační schéma COLLATIONS
Tabulka
information_schema.COLLATIONS
tabulka obsahuje úplný seznam podporovaných porovnávání v MariaDB. Toto je stejný seznam, který SHOW COLLATIONS
vrátí.
Proto můžeme dotaz na tuto tabulku vrátit kolace, která chceme vrátit. Můžeme také zúžit sloupce pouze na ty, které nás zajímají.
Příklad:
SELECT *
FROM information_schema.COLLATIONS
WHERE COLLATION_NAME LIKE 'utf%'
AND SORTLEN = '4';
Výsledek:
+---------------------+--------------------+--- --+------------+-------------+---------+| COLLATION_NAME | CHARACTER_SET_NAME | ID | IS_DEFAULT | IS_COMPILED | SORTLEN |+---------------------+--------------------+---- -+------------+-------------+---------+| utf8_thai_520_w2 | utf8 | 578 | | Ano | 4 || utf8mb4_thai_520_w2 | utf8mb4 | 610 | | Ano | 4 || utf16_thai_520_w2 | utf16 | 674 | | Ano | 4 || utf32_thai_520_w2 | utf32 | 738 | | Ano | 4 |+---------------------+--------------------+---- -+------------+-------------+---------+
Jak vidíte, vrací stejné sloupce jako SHOW COLLATIONS
příkaz vrátí.
Vzhledem k tomu používá standardní SQL SELECT
můžeme naše výsledky přizpůsobit mnoha způsoby. Můžeme také snížit vrácené sloupce, spojit tabulku s jinými tabulkami atd.
Zde je příklad zmenšení vrácených sloupců:
SELECT
COLLATION_NAME,
CHARACTER_SET_NAME
FROM information_schema.COLLATIONS
WHERE COLLATION_NAME LIKE 'utf%'
AND SORTLEN = '4';
Výsledek:
+---------------------+--------------------+| COLLATION_NAME | CHARACTER_SET_NAME |+---------------------+--------------------+| utf8_thai_520_w2 | utf8 || utf8mb4_thai_520_w2 | utf8mb4 || utf16_thai_520_w2 | utf16 || utf32_thai_520_w2 | utf32 |+---------------------+--------------------+
Informační schéma COLLATION_CHARACTER_SET_APPLICABILITY
Tabulka
information_schema.COLLATION_CHARACTER_SET_APPLICABILITY
tabulka obsahuje podmnožinu information_schema.COLLATIONS
stůl. Obsahuje stejná kolace a znakové sady, ale to je vše. Tím chci říct, že obsahuje méně sloupců.
Příklad:
SELECT *
FROM information_schema.COLLATION_CHARACTER_SET_APPLICABILITY
LIMIT 10;
Výsledek:
+-----------------------+--------------------+| COLLATION_NAME | CHARACTER_SET_NAME |+-----------------------+--------------------+| big5_chinese_ci | velký5 || big5_bin | velký5 || big5_chinese_nopad_ci | velký5 || big5_nopad_bin | velký5 || dec8_swedish_ci | prosince || dec8_bin | prosince || dec8_swedish_nopad_ci | prosince || dec8_nopad_bin | prosince || cp850_general_ci | cp850 || cp850_bin | cp850 |+-----------------------+--------------------+V tomto případě jsem použil
LIMIT
klauzule k omezení vrácených řádků na pouhých 10. Jinak by vrátila 322 řádků.