Mysql
 sql >> Base de données >  >> RDS >> Mysql

Fonction MySQL CHAR() et sortie UTF8 ?

Vous confondez UTF-8 avec Unicode.

0x00FC est l'Unicode point de code pour ü :

mysql> select char(0x00FC using ucs2);
+----------------------+
| char(0x00FC using ucs2) |
+----------------------+
| ü                   | 
+----------------------+

En UTF-8 codage, 0x00FC est représenté par deux octets :

mysql> select char(0xC3BC using utf8);
+-------------------------+
| char(0xC3BC using utf8) |
+-------------------------+
| ü                      | 
+-------------------------+

UTF-8 est simplement un moyen de encoder Caractères Unicode sous forme binaire. Il est censé être économe en espace, c'est pourquoi les caractères ASCII ne prennent qu'un seul octet, et les caractères iso-8859-1 tels que ü ne prennent que deux octets. Certains autres caractères prennent trois ou quatre octets, mais ils sont beaucoup moins courants.