So schreiben Sie UTF-8-Strings korrekt über die JDBC-Schnittstelle in MySQL
Problem:
Beim Versuch, UTF-8-Strings über die JDBC-Schnittstelle in eine MySQL-Datenbank einzufügen, werden die Daten in der falsch angezeigt Datenbank.
Hintergrund:
Das bereitgestellte Code-Snippet demonstriert den Prozess des Herstellens einer Verbindung zu einer Datenbank, des Erstellens einer Tabelle, des Einfügens von Zeilen mit UTF-8-Daten und des Überprüfens eingefügte Daten. Die Ausgabe zeigt jedoch, dass die UTF-8-Zeichen beschädigt sind.
Fehlerbehebung:
1. Überprüfen Sie die MySQL-Konfigurationskodierung:
Stellen Sie sicher, dass die MySQL-Konfigurationsdatei (my.cnf oder my.ini) die richtigen Zeichenkodierungseinstellungen enthält. Überprüfen Sie die Einstellungen mit den folgenden Befehlen:
show variables like 'character%'; show variables like 'collation%';
2. Ändern Sie die Konfigurationsdatei (falls erforderlich):
Fügen Sie basierend auf Ihrer MySQL-Version die folgenden Zeilen zur Konfigurationsdatei hinzu:
[mysqld] character-set-server = utf8 character-set-filesystem = utf8
ODER
[client] default-character-set=utf8 [mysql] default-character-set=utf8 [mysqld] default-character-set=utf8 character-set-server=utf8
3. Konfigurieren Sie die JDBC-Verbindung:
Geben Sie beim Herstellen der JDBC-Verbindung den folgenden Parameter an:
con = DriverManager.getConnection("jdbc:mysql://localhost:3306/myDatabase?useUnicode=true&characterEncoding=UTF-8","user","passwd");
4. Redundanten Code entfernen:
Basierend auf dem bereitgestellten Codeausschnitt wird empfohlen, die folgenden Zeilen aus dem Code zu entfernen:
query = "set character set utf8"; stat.execute(query);
Erwartetes Ergebnis:
Nach der Implementierung dieser Änderungen sollten die UTF-8-Strings korrekt geschrieben und im MySQL angezeigt werden Datenbank.
Das obige ist der detaillierte Inhalt vonWie stellt man die korrekte Einfügung von UTF-8-Strings in MySQL über JDBC sicher?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!