„Wenn ein Arbeiter seine Arbeit gut machen will, muss er zuerst seine Werkzeuge schärfen.“ – Konfuzius, „Die Gespräche des Konfuzius. Lu Linggong“
Titelseite > Programmierung > Wie behebe ich doppelt codierte UTF8-Zeichen in MySQL?

Wie behebe ich doppelt codierte UTF8-Zeichen in MySQL?

Veröffentlicht am 16.11.2024
Durchsuche:305

How to Fix Double-Encoded UTF8 Characters in MySQL?

Wiederherstellung von doppelt codierten UTF8-Zeichen

Zuvor mit LOAD DATA INFILE importierte Daten wurden fälschlicherweise als in Latin1 codiert angenommen. Daher wurden Multibyte-Zeichen in einzelne Bytes aufgeteilt und anschließend in UTF8 kodiert, was zu einer Doppelkodierung führte. Dies führt zu beschädigten Zeichen wie „ñ“ anstelle von „ñ“.

Um diese Fehler zu beheben, kann eine spezielle MySQL-Funktion verwendet werden, um die korrekten UTF8-Strings nach der Doppelkodierung wiederherzustellen:

CONVERT(CAST(CONVERT(field USING latin1) AS BINARY) USING utf8)

Diese Funktion kann in eine integriert werden UPDATE-Anweisung zur Korrektur der betroffenen Felder:

UPDATE tablename SET
    field = CONVERT(CAST(CONVERT(field USING latin1) AS BINARY) USING utf8);

Durch die Ausführung dieser Anweisung ersetzt die Datenbank die doppelt codierten Werte durch ihre korrekten UTF8-Gegenstücke und löst so die Zeichenanomalien auf.

Neuestes Tutorial Mehr>

Haftungsausschluss: Alle bereitgestellten Ressourcen stammen teilweise aus dem Internet. Wenn eine Verletzung Ihres Urheberrechts oder anderer Rechte und Interessen vorliegt, erläutern Sie bitte die detaillierten Gründe und legen Sie einen Nachweis des Urheberrechts oder Ihrer Rechte und Interessen vor und senden Sie ihn dann an die E-Mail-Adresse: [email protected] Wir werden die Angelegenheit so schnell wie möglich für Sie erledigen.

Copyright© 2022 湘ICP备2022001581号-3