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

PHP/PDO/MySQL:insertar en MEDIUMBLOB almacena datos incorrectos

No creo que esto deba ser un error. Puedo imaginar que cada vez que el cliente habla con el servidor y dice que el siguiente comando está en UTF-8 y el servidor lo necesita en Latin-1, entonces la consulta podría volver a codificarse antes del análisis y la ejecución. Este es un problema de codificación para el transporte de los datos. Dado que el análisis completo de la consulta anterior se verá afectado por esta recodificación, los datos binarios de la columna BLOB también se modificarán.

Del manual de Mysql:

O en el camino de regreso:los datos Latin1 de la tienda se convertirán en UTF-8 porque el cliente le dijo al servidor que prefiere UTF-8 para el transporte.

El identificador de PDO en sí que nombras parece ser algo completamente diferente:

No soy un experto en MySQL, pero lo explicaría de esta manera. El cliente y el servidor necesitan negociar qué juegos de caracteres están usando y asumo que lo hacen por una razón.