So lösen Sie das Problem des verstümmelten MySQL-Inserts

So lösen Sie das Problem des verstümmelten MySQL-Inserts

Problembeschreibung:

Beim Einfügen chinesischer Zeichen in MySQL werden chinesische Zeichen in MySQL normal angezeigt, aber JSP zeigt chinesische Zeichen in MySQL im Vordergrund an und ist verstümmelt.

Lösung:

Rufen Sie die MySQL-Konsole auf und führen Sie den folgenden Befehl aus:

SET Zeichensatzclient = "utf8";
SET Zeichensatzverbindung = "utf8";
SET Zeichensatzergebnisse = "utf8";

Weitere Lösungen:

Kunde Der vom Client verwendete Zeichensatz.
Verbindung Legt den Zeichensatztyp für die Verbindung mit der Datenbank fest. Wenn das Programm den für die Verbindung mit der Datenbank verwendeten Zeichensatztyp nicht angibt, wird der Standardzeichensatz auf dem Server verwendet.
Datenbank Der von einer Bibliothek im Datenbankserver verwendete Zeichensatz. Wenn er beim Erstellen der Bibliothek nicht angegeben wird, wird der bei der Installation des Servers angegebene Zeichensatz verwendet.
Ergebnisse Der von der Datenbank verwendete Zeichensatz bei der Rückgabe von Daten an den Client. Wenn nicht angegeben, wird der Standardzeichensatz des Servers verwendet.
Server Der bei der Installation des Servers angegebene Standardzeichensatz.
System Der vom Datenbanksystem verwendete Zeichensatz.

Die Eingabe des CMD-Clients verwendet die GBK-Kodierung, während das Datenbankkodierungsformat UTF-8 ist. Die inkonsistente Kodierung führt zu verstümmelten Zeichen. Das aktuelle Kodierungsformat des CMD-Clients kann nicht geändert werden. Sie können daher nur den Kodierungssatz von Verbindung, Client und Ergebnissen ändern, um den Server darüber zu informieren, dass die aktuell eingefügten Daten die GBK-Kodierung verwenden. Obwohl die Serverdatenbank die UTF-8-Kodierung verwendet, kann sie die dem Server mitgeteilten GBK-kodierten Daten erkennen und sie zur Speicherung automatisch in UTF-8 konvertieren. Mit der folgenden Anweisung können Sie den auf den Client bezogenen Kodierungssatz schnell festlegen:
Namen festlegen gbk;

Nachdem die Einstellungen abgeschlossen sind, kann das Problem der verstümmelten Daten, die auf dem Client eingefügt oder angezeigt werden, gelöst werden. Wir werden jedoch bald feststellen, dass diese Art der Einstellung nur im aktuellen Fenster gültig ist. Wenn das Fenster geschlossen und der CMD-Client erneut geöffnet wird, tritt das verstümmelte Problem erneut auf. Wie kann man also eine endgültige Einstellung vornehmen? Im MySQL-Installationsverzeichnis befindet sich eine my.ini-Konfigurationsdatei. Durch Ändern dieser Konfigurationsdatei kann das Problem der verstümmelten Zeichen ein für alle Mal gelöst werden. In dieser Konfigurationsdatei bezieht sich [mysql] auf die Clientkonfiguration und [mysqld] auf die Serverkonfiguration. Die Standardkonfiguration ist wie folgt:

[mysql]
Standardzeichensatz = utf8
[mysqld]
Zeichensatzserver = utf8

Zu diesem Zeitpunkt müssen Sie nur die Standardkodierung default-character-set=utf8 in default-character-set=gbk ändern und den MySQL-Dienst neu starten.

Dies ist das Ende dieses Artikels zur Lösung des MySQL-Insert-Garbled-Problems. Weitere Informationen zur Lösung des MySQL-Insert-Garbled-Problems finden Sie in früheren Artikeln auf 123WORDPRESS.COM oder in den folgenden verwandten Artikeln. Ich hoffe, Sie werden 123WORDPRESS.COM auch in Zukunft unterstützen!

Das könnte Sie auch interessieren:
  • So lösen Sie das Problem, dass MySQL nicht geschlossen werden kann
  • Beheben Sie das Problem, dass die MySQL-Datenbank unerwartet abstürzt, wodurch die Tabellendatendatei beschädigt wird und nicht gestartet werden kann
  • Dieser Artikel löst das Kompatibilitätsproblem zwischen Django 2.2 und MySQL
  • Eine kurze Erläuterung des Datums-/Uhrzeitformats beim Exportieren von Tabellendaten von MySQL nach Excel
  • Beheben Sie schnell die Probleme des falschen Formats, des langsamen Imports und des Datenverlusts beim Importieren von Daten aus MySQL
  • Lösen Sie schnell das Problem verstümmelter Zeichen und springender Zeilen in aus MySQL exportierten SCV-Dateien
  • Änderung des Zeitzonenproblems von MySQL-Containern in Docker
  • Problem bei der Parameterübergabe in pyMySQL-SQL-Anweisungen, Beschreibung einzelner oder mehrerer Parameter
  • Ausführliches Tutorial zu Installations- und Upgradeproblemen bei MySQL 5.7.30
  • Lösung für das Problem des MySQL-Datenverzögerungssprungs

<<:  Analyse des benutzerdefinierten Überwachungs- und Alarmimplementierungsprozesses von Linux Zabbix

>>:  Implementierung einfacher Tabs mit js

Artikel empfehlen

Was tun, wenn der von Docker Run gestartete Container hängt und Daten verliert?

Szenariobeschreibung In einem bestimmten System w...

CSS-Isolationsproblem in Blazor

1. Umwelt VS 2019 16.9.0 Vorschau 1.0 .NET SDK 5....

VUE implementiert Saugknopf an der Unterseite

In diesem Artikelbeispiel wird der spezifische Co...

So ändern Sie das Anfangskennwort eines Benutzers in mysql5.7

Wenn Benutzer MySQL-Datenbanken zum ersten Mal in...

JavaScript-Tippspiel

In diesem Artikel wird der spezifische JavaScript...

Detaillierte Erklärung langsamer MySQL-Abfragen

Informationen zu MySQL-Vorgängen abfragen Status ...

React-Internationalisierung react-i18next ausführliche Erklärung

Einführung react-i18next ist ein leistungsstarkes...

Beispielcode zum Vergleich verschiedener Syntaxformate von vue3

Die Standardvorlagenmethode ähnelt vue2 und verwe...

MySQL-Cursorfunktionen und -Verwendung

Inhaltsverzeichnis Definition Die Rolle des Curso...

MySQL-Lerndatenbankbetrieb DML ausführliche Erklärung für Anfänger

Inhaltsverzeichnis 1. Anweisung einfügen 1.1 Einf...

Grundlegende Anwendungsbeispiele für Listener in Vue

Inhaltsverzeichnis Vorwort 1. Grundlegende Verwen...

MySQL-Kill-Befehl – ​​Verwendungshandbuch

KILL [VERBINDUNG | ABFRAGE] Prozesslisten-ID In M...

Vue implementiert einfache Rechnerfunktion

In diesem Artikelbeispiel wird der spezifische Co...