Maison  >  Article  >  base de données  >  Comment garantir l'insertion correcte d'une chaîne UTF-8 dans MySQL via JDBC ?

Comment garantir l'insertion correcte d'une chaîne UTF-8 dans MySQL via JDBC ?

Linda Hamilton
Linda Hamiltonoriginal
2024-11-02 15:27:29304parcourir

How to Ensure Correct UTF-8 String Insertion into MySQL through JDBC?

Comment écrire correctement des chaînes UTF-8 dans MySQL via l'interface JDBC

Problème :

Lors de la tentative d'insertion de chaînes UTF-8 dans une base de données MySQL à l'aide de l'interface JDBC, les données ne s'affichent pas correctement dans la base de données.

Contexte :

Le code L'extrait fourni montre le processus de connexion à une base de données, de création d'une table, d'insertion de lignes avec des données UTF-8 et de vérification des données insérées. Cependant, le résultat montre que les caractères UTF-8 sont corrompus.

Dépannage :

1. Vérifiez l'encodage de la configuration MySQL :

Assurez-vous que le fichier de configuration MySQL (my.cnf ou my.ini) contient les paramètres d'encodage de caractères corrects. Vérifiez les paramètres avec les commandes suivantes :

show variables like 'character%';

show variables like 'collation%';

2. Modifier le fichier de configuration (si nécessaire) :

En fonction de votre version de MySQL, ajoutez les lignes suivantes au fichier de configuration :

[mysqld]
character-set-server = utf8
character-set-filesystem = utf8

OR

[client]
default-character-set=utf8

[mysql]
default-character-set=utf8

[mysqld]
default-character-set=utf8
character-set-server=utf8

3. Configurer la connexion JDBC :

Lors de l'établissement de la connexion JDBC, spécifiez le paramètre suivant :

con = DriverManager.getConnection("jdbc:mysql://localhost:3306/myDatabase?useUnicode=true&characterEncoding=UTF-8","user","passwd");

4. Supprimer le code redondant :

Sur la base de l'extrait de code fourni, il est recommandé de supprimer les lignes suivantes du code :

query = "set character set utf8";
stat.execute(query);

Résultat attendu :

Après avoir implémenté ces modifications, les chaînes UTF-8 doivent être correctement écrites et affichées dans la base de données MySQL.

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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn