"Si un ouvrier veut bien faire son travail, il doit d'abord affûter ses outils." - Confucius, "Les Entretiens de Confucius. Lu Linggong"
Page de garde > La programmation > Pourquoi est-ce que je reçois des erreurs de "chaîne de caractères UTF8 non valides lors de l'enregistrement des emojis dans ma base de données MySQL UTF8MB4?

Pourquoi est-ce que je reçois des erreurs de "chaîne de caractères UTF8 non valides lors de l'enregistrement des emojis dans ma base de données MySQL UTF8MB4?

Publié le 2025-02-27
Parcourir:909

Why Am I Getting

Enregistrer les emojis dans la base de données MySQL UTF8MB4: dépannage des erreurs de caractères non valides

Lorsque vous essayez de stocker des noms contenant des emojis dans une configuration MySQL, des erreurs comme "invalid le caractéristique UTF8" peut-être une configuration MySQL, des erreurs comme "Invalid Caracter String" mays dans une configuration MySQL. Un problème potentiel réside dans les paramètres de jeu de caractères et de collation incohérents. question:

-------------------------- -------------------- | Variable_name | Valeur | -------------------------- -------------------- | caractères_set_client | UTF8MB4 | | caractères_set_connection | UTF8MB4 | | caractères_set_database | UTF8MB4 | | caractères_set_filesystem | binaire | | caractères_set_results | UTF8MB4 | | caractères_set_server | UTF8MB4 | | caractères_set_system | UTF8 | | collation_connection | UTF8MB4_UNICODE_CI | | collation_database | UTF8MB4_UNICODE_CI | | collation_server | UTF8MB4_UNICODE_CI | -------------------------- --------------------

SHOW VARIABLES WHERE Variable_name LIKE 'character\_set\_%' OR Variable_name LIKE 'collation%';

De plus, vérifiez si le fichier de configuration My.cnf contient des incohérences. Recherchez des paramètres qui spécifient les ensembles de caractères et les collations et assurez-vous qu'ils sont cohérents avec la configuration de la base de données. Par exemple, vérifiez que ces lignes sont présentes:

 -------------------------- -------------------- 
| Variable_name            | Value              |
 -------------------------- -------------------- 
| character_set_client     | utf8mb4            |
| character_set_connection | utf8mb4            |
| character_set_database   | utf8mb4            |
| character_set_filesystem | binary             |
| character_set_results    | utf8mb4            |
| character_set_server     | utf8mb4            |
| character_set_system     | utf8               |
| collation_connection     | utf8mb4_unicode_ci |
| collation_database       | utf8mb4_unicode_ci |
| collation_server         | utf8mb4_unicode_ci |
 -------------------------- -------------------- 

Si ces paramètres ne sont pas présents ou incorrects, modifiez-les au besoin et redémarrez le service mysql.

Enfin, envisagez d'exécuter la requête suivante pour définir le jeu de caractères et la collation pour la connexion actuelle:

character-set-client-handshake = FALSE
character-set-server = utf8mb4
collation-server = utf8mb4_unicode_ci

en suivant ces étapes, vous pouvez résoudre le problème des erreurs de caractères UTF-8 invalides lors de l'enregistrement des emojis dans une base de données MySQL avec la configuration UTF8MB4.

Dernier tutoriel Plus>

Clause de non-responsabilité: Toutes les ressources fournies proviennent en partie d'Internet. En cas de violation de vos droits d'auteur ou d'autres droits et intérêts, veuillez expliquer les raisons détaillées et fournir une preuve du droit d'auteur ou des droits et intérêts, puis l'envoyer à l'adresse e-mail : [email protected]. Nous nous en occuperons pour vous dans les plus brefs délais.

Copyright© 2022 湘ICP备2022001581号-3