Heim  >  Artikel  >  Datenbank  >  Wie bleibt die Tabellenformatierung in MySQL mit UTF8-Zeichenkodierung erhalten?

Wie bleibt die Tabellenformatierung in MySQL mit UTF8-Zeichenkodierung erhalten?

DDD
DDDOriginal
2024-10-30 17:45:30924Durchsuche

How to Preserve Table Formatting in MySQL with UTF8 Character Encoding?

Verbesserung der MySQL-Befehlszeilenformatierung durch UTF8-Zeichenkodierung

Beim Arbeiten mit schwedischen und norwegischen Zeichenfolgen, die in einer Datenbanktabelle gespeichert sind, können beim Abfragen von Daten Probleme mit der Tabellenformatierung auftreten Verwendung verschiedener Zeichensätze.

Problemstellung

Standardmäßig wird die Verwendung von „set name latin1;“ verwendet. erzeugt eine verzerrte Ausgabe:

+-----------------------------------+
| name                              |
+-----------------------------------+
| Kid Interi#####                   | 
| Bwg Homes                         | 
| If Skadef####kring                | 
| Jangaard Export                   | 
| Nordisk Film                      | 
+-----------------------------------+

Wechsel zu „Namen festlegen utf8;“ zeigt die Zeichen korrekt an, stört aber die tabellarische Formatierung:

+-----------------------------------+
| name                              |
+-----------------------------------+
| Kid Interiør                     | 
| Bwg Homes                         | 
| If Skadeförsäkring              | 
| Jangaard Export                   | 
| Nordisk Film                      | 
+-----------------------------------+

Lösung

Um die tabellarische Formatierung bei Verwendung der UTF8-Zeichenkodierung beizubehalten, können Sie den MySQL-Client mit dem Befehl „--default-“ starten. Option „character-set=utf8“:

mysql --default-character-set=utf8

Sie können dies auch als Standardeinstellung in der Datei „/etc/mysql/my.cnf“ konfigurieren:

[mysql]
default-character-set=utf8

Dies Setzt die Konfigurationsvariablen „character_set_client“, „character_set_connection“ und „character_set_results“ auf utf8.

Wenn das Formatierungsproblem weiterhin besteht, stellen Sie mithilfe der folgenden Befehle sicher, dass die Datenbank, Tabellen und Spalten ebenfalls auf utf8 eingestellt sind:

SHOW VARIABLES LIKE '%CHAR%';
SET character-set-server = utf8;

Überprüfen Sie außerdem, ob Unicode-Zeichen vorhanden sind, die möglicherweise mit einer Latin1-Verbindung geschrieben wurden. Um dieses Problem zu beheben, stellen Sie eine Verbindung zur Datenbank mit demselben Zeichensatz her, in den die Werte geschrieben wurden, oder rufen Sie sie ab und schreiben Sie sie mit der richtigen Kodierung neu.

Hinweis: Die utf8-Kodierung von MySQL ist kein vollständiger Unicode Durchführung. Erwägen Sie die Verwendung des Zeichensatzes utf8mb4 für eine echte UTF-8-Implementierung:

mysql --default-character-set=utf8mb4

Das obige ist der detaillierte Inhalt vonWie bleibt die Tabellenformatierung in MySQL mit UTF8-Zeichenkodierung erhalten?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn