Wenn sich ein Projekt über eine lange Laufzeit zieht oder ab und an mal ein weiterer Entwickler mitarbeitet, kann es sehr wahrscheinlich zu einem Mix von verschiedenen Tabellenzeichensätzen bei MySQL kommen: latin1, utf8_general, utf8_unicode, …
Ein dadurch auftretender Fehler ist z. B. folgender:
Illegal mix of collations (latin1_swedish_ci,IMPLICIT) and (utf8_general_ci,COERCIBLE)
Mit folgendem SQL-Statement bekommt man das aber relativ flott konvertiert:
ALTER TABLE table CONVERT TO CHARACTER SET utf8 COLLATE utf8_general_ci;
Zum Unterschied zwischen utf8_general und utf8_unicode gibts übrigens im MySQL-Forum einen guten Artikel. Für mich stellt sich somit als Ergebnis: utf8_unicode ist die erste Wahl für internationale Anwendungen, allerdings etwas langsamer als utf8_general.
8 Antworten zu Zeichensatz einer MySQL-Tabelle (nachträglich) ändern