Heim >Datenbank >MySQL-Tutorial >Detaillierte Erklärung des chinesischen verstümmelten Problems in der MySQL-Datenbank
In diesem Artikel werden hauptsächlich relevante Informationen vorgestellt, um das Problem der verstümmelten chinesischen Zeichen in der MySQL-Datenbank zu erläutern. Freunde in Not können sich darauf beziehen.
Wenn Sie chinesische Daten in der Form insert into employee values(null,'张三','female','1995-10-08','2015-11-12','Sales',2000,'是个好员工!')
in die MySQL-Datenbank einfügen und verstümmelte Zeichen angezeigt werden, können Sie die Anweisung show variables like 'character%'
verwenden, um den relevanten Codierungssatz der aktuellen Datenbank anzuzeigen.
Wie Sie auf dem Bild oben sehen können, verwendet MySQL Zeichensätze an sechs Stellen, nämlich: Client, Verbindung, Datenbank, Ergebnisse, Server und System. Darunter, bezogen auf den Server: Datenbank, Server, System (kann nie geändert werden, es ist utf-8); bezogen auf den Client: Verbindung, Client, Ergebnisse.
Kunde |
ist Der vom Client verwendete Zeichensatz. |
Verbindung |
ist die Zeichensatzeinstellung für die Verbindung zum Datenbanktyp: Wenn das Programm den Zeichensatztyp, der zum Herstellen einer Verbindung zur Datenbank verwendet wird, nicht angibt, wird die serverseitige Standardzeichensatzeinstellung verwendet. |
Datenbank |
ist eine Bibliothek im Datenbankserver Die verwendete Zeichensatzeinstellung verwendet, sofern sie beim Erstellen der Datenbank nicht angegeben wurde, die bei der Serverinstallation angegebene Zeichensatzeinstellung. |
Ergebnisse |
bei der Rückkehr zum Kunden vom Datenbank Der zu verwendende Zeichensatz. Wenn nicht angegeben, wird der Standardzeichensatz des Servers verwendet. |
Server |
ist die Standardzeichensatzeinstellung, die während der Serverinstallation angegeben wird. |
system |
ist der von der verwendete Zeichensatz Datenbanksystem eingerichtet. |
Nachdem wir die obigen Informationen verstanden haben, analysieren wir den Grund für den verstümmelten Code. Das Problem liegt in der aktuelles CMD Da die aktuelle CMD-Clienteingabe im Client-Fenster GBK-Codierung verwendet und das Codierungsformat der Datenbank UTF-8 ist, führt eine inkonsistente Codierung zu verstümmelten Zeichen. Das Codierungsformat des aktuellen CMD-Clients kann nicht geändert werden, sodass der Codierungssatz für Verbindung, Client und Ergebnisse nur geändert werden kann, um den Server darüber zu informieren, dass die aktuell eingefügten Daten GBK-Codierung verwenden. Obwohl die Datenbank des Servers UTF-8-Codierung verwendet. Es kann erkannt werden. Benachrichtigen Sie die Serverseite über GBK-codierte Daten und konvertieren Sie sie zur Speicherung automatisch in UTF-8. Sie können die folgenden Anweisungen verwenden, um den Codierungssatz für den Client schnell festzulegen:
set name gbk;
Es kann gelöst werden Nach Abschluss der Einstellung liegt ein verstümmeltes Problem beim Einfügen von Daten oder beim Anzeigen von Daten auf dem Client vor. Wir werden jedoch bald feststellen, dass diese Einstellung nur im aktuellen Fenster wirksam ist, wenn das Fenster geschlossen und der CMD-Client erneut geöffnet wird , wird das verstümmelte Problem dann wieder auftauchen; wie erstelle ich ein „Set-and-Forget“-Setup? Im MySQL-Installationsverzeichnis befindet sich eine Konfigurationsdatei my.ini. Durch Ändern dieser Konfigurationsdatei können Sie das verstümmelte Problem ein für alle Mal lösen. In dieser Konfigurationsdatei bezieht sich [mysql] auf die Client-Konfiguration und [mysqld] auf die Serverkonfiguration. Die Standardkonfiguration lautet wie folgt:
[mysql]
default-character-set=utf8
[mysqld]
character-set-server=utf8
Zu diesem Zeitpunkt müssen Sie nur die ändern Standardkodierung default-character Ändern Sie -set=utf8 in default-character-set=gbk und starten Sie den MySQL-Dienst neu.
Hast du es schon gelernt? Ich hoffe, es kann den dringenden Bedarf lösen.
Verwandte Empfehlungen:
Zusammenfassung der Lösungen für verstümmelte chinesische Zeichen in der MySQL-Datenbank
Lösungen für verstümmelte chinesische Zeichen in PHP Verbindung zur MySQL-Datenbank_ PHP-Tutorial
Das obige ist der detaillierte Inhalt vonDetaillierte Erklärung des chinesischen verstümmelten Problems in der MySQL-Datenbank. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!