Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Problem bei der MySQL-Konvertierung des Zeichensatzes

Gut! Das muss also passiert sein:

Benutzeroberfläche (UTF-8) → Controller (UTF-8) → Modell (ISO-8859-1) → Datenbank (UTF-8, empfängt aber ISO-8859-1)

Die Felder wurden also so konfiguriert, dass sie die UTF-8-Codierung verwenden, aber sie empfangen ISO-8859-1-codierte Daten. Ich wollte die falsch codierten Daten in UTF-8 umwandeln.

Da die Daten tatsächlich ISO-8559-1 kodiert waren, habe ich mein Problem mit folgendem kleinen MySQL-Hack gelöst:

UPDATE `table` SET `column` = convert(cast(convert(`column` using  latin1) as binary) using utf8)

Mit freundlicher Genehmigung von ABS auf StackOverflow.

Vielen Dank, dass Sie sich die Zeit genommen haben, sich mit meinem Problem zu befassen, Jungs! :)