valid utf8mb4_unicode_ci utf8 support not full for error edteam code character_set_system mysql unicode utf8mb4

utf8mb4_unicode_ci - utf8mb4 mysql config



MySQL no quiere almacenar caracteres Unicode (3)

Primero: su extracto

UTF16 es U + 2B5EE

es un poco incorrecto U+2B5EE es la notación para un punto de código Unicode, solo un número entero, un código abstracto, mientras que UTF16 es una codificación de conjunto de caracteres (una de las posibles codificaciones Unicode, como es UTF-8).

Ahora, asumiendo que se U+2B5EE al punto de código, U+2B5EE está fuera del BMP (primeros 64K puntos de código unicode), y parece que mysql tiene poco o ningún soporte para ellos . Entonces sospecho que no tienes suerte.

¿Por qué MySQL no almacenará el carácter Unicode 𫗮 ? Sí, es un raro jeroglífico, no lo verías en el navegador.
UTF16 es U+2B5EE

Warning: #1366 Incorrect string value: ''/xF0/xAB/x97/xAE'' for column ''ch'' at row 1

¿Es posible almacenar este personaje en MySQL?


MySQL solo admite caracteres del plano multilingüe básico ( 0x0000 - 0xFFFF ).

Tu personaje está fuera si este avión.

Trate de almacenar un sinónimo en su lugar :)

Actualizar:

MySQL 5.5.3 y on (que aún no se ha convertido en GA) admite caracteres suplementarios si utiliza la codificación UTF8MB4 .


Desde que se publicó esta pregunta, se lanzó MySQL 5.5.3, que admite la codificación utf8mb4 que ofrece compatibilidad total con Unicode. Cambiar a este conjunto de caracteres en lugar de utf8 solucionaría su problema.

Recientemente escribí una guía detallada sobre cómo cambiar de utf8 de MySQL a utf8mb4 . Si sigues los pasos allí, todo debería funcionar correctamente. Aquí hay enlaces directos a cada paso individual en el proceso:

Sospecho que su problema puede resolverse siguiendo el paso 5. ¡Espero que esto ayude!