Maison >base de données >tutoriel mysql >Comment corriger l'erreur MySQL « Valeur de chaîne incorrecte » lors de l'insertion de données UTF-8 via JDBC ?
Dépannage de l'erreur « Valeur de chaîne incorrecte » lors de l'insertion d'UTF-8 dans MySQL via JDBC
L'erreur « Valeur de chaîne incorrecte » peut se produire lorsque tenter d'insérer des données UTF-8 dans une base de données MySQL à l'aide de JDBC. Cette erreur indique généralement que l'encodage des caractères n'est pas correctement configuré.
Explication du problème
Dans votre cas, vous avez configuré votre connexion JDBC avec les paramètres suivants :
Connection conn = DriverManager.getConnection(url + dbName + "?useUnicode=true&characterEncoding=utf-8", userName, password);
Cette configuration spécifie que les caractères Unicode doivent être utilisés et que le codage des caractères doit être UTF-8. Cependant, le message d'erreur suggère que la valeur de chaîne incorrecte commence par "xF0", qui est un caractère UTF-8 de 4 octets.
Solution
Par défaut, Le codage utf8 de MySQL autorise uniquement les caractères pouvant être représentés avec 3 octets en UTF-8. Pour résoudre ce problème, vous devez spécifier le codage utf8mb4 pour votre base de données MySQL. Cet encodage prend en charge les caractères qui occupent 4 octets en UTF-8.
Étapes à résoudre :
ALTER TABLE table_name MODIFY COLUMN column_name VARCHAR(255) CHARACTER SET utf8mb4;
Informations supplémentaires :
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!