Se hai bisogno di trovare le regole di confronto disponibili nella tua installazione di MariaDB, controlla i tre metodi seguenti.
Il SHOW COLLATIONS
Dichiarazione
Il SHOW COLLATIONS
statement è un modo semplice e veloce per restituire tutte le regole di confronto disponibili in MariaDB. Puoi usarlo da solo per restituire tutte le regole di confronto o filtrare i risultati con un LIKE
e/o WHERE
clausola.
Esempio:
SHOW COLLATION LIKE 'latin7%';
Risultato:
+-------------------------+---------+------+---------+----------+---------+ | Collation | Charset | Id | Default | Compiled | Sortlen | +-------------------------+---------+------+---------+----------+---------+ | latin7_estonian_cs | latin7 | 20 | | Yes | 1 | | latin7_general_ci | latin7 | 41 | Yes | Yes | 1 | | latin7_general_cs | latin7 | 42 | | Yes | 1 | | latin7_bin | latin7 | 79 | | Yes | 1 | | latin7_general_nopad_ci | latin7 | 1065 | | Yes | 1 | | latin7_nopad_bin | latin7 | 1103 | | Yes | 1 | +-------------------------+---------+------+---------+----------+---------+
In questo caso, ho ristretto i risultati solo alle regole di confronto che iniziano con latin7
.
Nota che possiamo includere il LIKE
clausola immediatamente dopo il SHOW COLLATION
testo. Quando lo facciamo, indica quali nomi di confronto devono corrispondere.
Ecco un altro esempio in cui utilizzo sia il WHERE
clausola e il LIKE
clausola:
SHOW COLLATION
WHERE Sortlen LIKE '4'
AND Collation LIKE 'utf%';
Risultato:
+---------------------+---------+-----+---------+----------+---------+ | Collation | Charset | Id | Default | Compiled | Sortlen | +---------------------+---------+-----+---------+----------+---------+ | utf8_thai_520_w2 | utf8 | 578 | | Yes | 4 | | utf8mb4_thai_520_w2 | utf8mb4 | 610 | | Yes | 4 | | utf16_thai_520_w2 | utf16 | 674 | | Yes | 4 | | utf32_thai_520_w2 | utf32 | 738 | | Yes | 4 | +---------------------+---------+-----+---------+----------+---------+
Lo schema informativo COLLATIONS
Tabella
Il information_schema.COLLATIONS
la tabella contiene un elenco completo delle regole di confronto supportate in MariaDB. Questo è lo stesso elenco che SHOW COLLATIONS
resi.
Pertanto, possiamo interrogare questa tabella per restituire le regole di confronto che vogliamo restituire. Possiamo anche restringere le colonne solo a quelle che ci interessano.
Esempio:
SELECT *
FROM information_schema.COLLATIONS
WHERE COLLATION_NAME LIKE 'utf%'
AND SORTLEN = '4';
Risultato:
+---------------------+--------------------+-----+------------+-------------+---------+ | COLLATION_NAME | CHARACTER_SET_NAME | ID | IS_DEFAULT | IS_COMPILED | SORTLEN | +---------------------+--------------------+-----+------------+-------------+---------+ | utf8_thai_520_w2 | utf8 | 578 | | Yes | 4 | | utf8mb4_thai_520_w2 | utf8mb4 | 610 | | Yes | 4 | | utf16_thai_520_w2 | utf16 | 674 | | Yes | 4 | | utf32_thai_520_w2 | utf32 | 738 | | Yes | 4 | +---------------------+--------------------+-----+------------+-------------+---------+
Come puoi vedere, restituisce le stesse colonne di SHOW COLLATIONS
dichiarazioni di ritorno.
Dato questo utilizza lo standard SQL SELECT
dichiarazione, possiamo personalizzare i nostri risultati in molti modi. Possiamo anche ridurre le colonne restituite, unire la tabella con altre tabelle, ecc.
Ecco un esempio di riduzione delle colonne restituite:
SELECT
COLLATION_NAME,
CHARACTER_SET_NAME
FROM information_schema.COLLATIONS
WHERE COLLATION_NAME LIKE 'utf%'
AND SORTLEN = '4';
Risultato:
+---------------------+--------------------+ | 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 | +---------------------+--------------------+
Lo schema informativo COLLATION_CHARACTER_SET_APPLICABILITY
Tabella
Lo information_schema.COLLATION_CHARACTER_SET_APPLICABILITY
la tabella contiene un sottoinsieme di information_schema.COLLATIONS
tavolo. Contiene le stesse regole di confronto e set di caratteri, ma questo è tutto. Con questo intendo dire che contiene solo meno colonne.
Esempio:
SELECT *
FROM information_schema.COLLATION_CHARACTER_SET_APPLICABILITY
LIMIT 10;
Risultato:
+-----------------------+--------------------+ | COLLATION_NAME | CHARACTER_SET_NAME | +-----------------------+--------------------+ | big5_chinese_ci | big5 | | big5_bin | big5 | | big5_chinese_nopad_ci | big5 | | big5_nopad_bin | big5 | | dec8_swedish_ci | dec8 | | dec8_bin | dec8 | | dec8_swedish_nopad_ci | dec8 | | dec8_nopad_bin | dec8 | | cp850_general_ci | cp850 | | cp850_bin | cp850 | +-----------------------+--------------------+
In questo caso ho usato il LIMIT
clausola per limitare le righe restituite a sole 10. Altrimenti avrebbe restituito 322 righe.