In MariaDB, CHARSET() è una funzione incorporata secondaria che restituisce il set di caratteri di una determinata stringa.
Forniamo la stringa quando chiamiamo la funzione.
Sintassi
La sintassi è questa:
CHARSET(str)
Dove str è la stringa.
Esempio
Ecco un semplice esempio:
SELECT CHARSET('Toast'); Risultato:
+------------------+
| CHARSET('Toast') |
+------------------+
| utf8 |
+------------------+ Ed eccolo di nuovo dopo aver convertito la stessa stringa in utf16:
SELECT CHARSET(CONVERT('Toast' USING utf16)); Risultato:
+---------------------------------------+
| CHARSET(CONVERT('Toast' USING utf16)) |
+---------------------------------------+
| utf16 |
+---------------------------------------+ Ed ecco un altro esempio che utilizza caratteri tailandesi:
SELECT CHARSET(_tis620'ไม้เมือง'); Risultato:
+--------------------------------------------+ | CHARSET(_tis620'ไม้เมือง') | +--------------------------------------------+ | tis620 | +--------------------------------------------+
Tipo di argomento errato
Passando un argomento che non è una stringa si ottiene la parola binary in fase di restituzione.
SELECT CHARSET(123); Risultato:
+--------------+ | CHARSET(123) | +--------------+ | binary | +--------------+
Argomenti nulli
Passaggio null risulta nella parola binary in fase di restituzione.
SELECT CHARSET(null); Risultato:
+---------------+ | CHARSET(null) | +---------------+ | binary | +---------------+
Argomento mancante
Chiamando CHARSET() senza passare un argomento si ottiene un errore:
SELECT CHARSET(); Risultato:
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near ')' at line 1