Impossible d'insérer des émojis dans MySQL : valeur de chaîne incorrecte ['xF0x9Fx91xBDxF0x9F...']
Lors de la tentative d'insertion d'une valeur de chaîne contenant emojis dans une base de données MySQL, les utilisateurs peuvent rencontrer l'erreur suivante : java.sql.SQLException : valeur de chaîne incorrecte : 'xF0x9Fx91xBDxF0x9F...'. Ce problème provient des limitations de codage de la base de données.
Comprendre le codage des Emoji
Les emojis, tels que les extraterrestres et les cœurs brisés, sont généralement représentés sous forme de points de code Unicode. Ces points de code peuvent ne pas correspondre au plan multilingue de base (BMP), qui est pris en charge par le codage utf8 de MySQL. Par conséquent, ces caractères ne peuvent pas être stockés dans les colonnes utf8.
Solution : Mise à niveau vers l'encodage 'utf8mb4'
Pour résoudre ce problème, il est nécessaire de passer à l'encodage utf8mb4, qui prend en charge les caractères supplémentaires. Cet encodage nécessite quatre octets pour stocker un caractère, tandis que utf8 ne peut stocker que jusqu'à trois octets.
Étapes pour implémenter l'encodage « utf8mb4 » :
En suivant ces étapes, vous pouvez mettre à jour votre environnement de base de données pour prendre en charge les caractères emoji et éviter l'exception de valeur de chaîne incorrecte.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!