Archiv nach Schlagworten: utf8

MySQL: Charset von ganzen Datenbanken bzw. Tables konvertieren

MySQL LogoAktuell stand ich vor dem Problem ein größeres Datenvolumen in die SQL-Datenbank eines bestehendes Projekt zu integieren. Nach Wiederherstellung der Daten aus einem SQL-Hotbackup, bemerkte ich das die „neuen“ Datenbanken und Tabellen alle im Charset „latin1“ bzw. der Collation „latin1_german1_ci“ definiert waren, wo hingegen die bestehenden Datenbanken des Projekts alle im Charset „utf8“ definiert waren.

Das ist mehr als nur ein kosmetisches Problem, denn es bedeutet das sämtliche Felder die Zeichenketten enthalten eine andere binäre Kodierung bei Sonderzeichen wie Umlaute enthalten. MySQL als Datenbank-System ist zwar in sehr flexibler Weise darauf ausgelegt Daten aus unterschiedlichen Charset zu handhaben. Aber dazu müsste eine Applikation die auf die Datenbank zugreift bewusst das Charset anmelden in der sie die Daten dann erwartet. Dazu kann eine Applikation nach öffnen der Verbindung zu einem MySQL-Server folgende Variablen setzen:

Weiterlesen »