sql >> Base de Datos >  >> RDS >> Mysql

¿Función MySQL CHAR () y salida UTF8?

Estás confundiendo UTF-8 con Unicode.

0x00FC es el Unicode punto de código para ü:

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

En UTF-8 codificación, 0x00FC está representado por dos bytes :

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

UTF-8 es simplemente una forma de codificación Caracteres Unicode en forma binaria. Está diseñado para ahorrar espacio, por lo que los caracteres ASCII solo ocupan un byte y los caracteres iso-8859-1, como ü, solo ocupan dos bytes. Algunos otros caracteres ocupan tres o cuatro bytes, pero son mucho menos comunes.