Moin,
Derzeit ist es ja auch so, dass die meisten Provider MySQL nur in der Version 3.23.49 anbieten und UTF-8 erst ab Version 4.1 funktioniert, oder? Das heisst doch, dass in Versionen vor 4.1 nur die Kodierung mit Entities sinnvoll ist, oder?
Nein, der UTF-8-Support in der Datenbank bringt dir im Wesentlichen nur was für die Stringfunktionen damit die korrekt arbeiten, wenn sie zum Beispiel die Länge bestimmen oder einzelne Teile ausschneiden sollen. Wenn du das nicht hast kannst du die Strings (sinnvoll) in der Datenbank nur wie Binärbrei betrachten (Suchen - auch von Substrings - geht natürlich weiterhin!) und musst zeichenweise Operationen irgendwo ausserhalb machen.
Das trifft so auch vollständig auf die Kodierung als Zeichenreferenzen zu da dort ein einzelnes Zeichen ja ebenfalls nicht immer gleich viele Bytes belegt. Im Prinzip gehen also sowohl UTF-8 als auch ASCII+Zeichenreferenzen gleich schlecht mit der alten Datenbank. (Nicht ganz: Zeichenreferenzen bereiten dir Probleme beim Suchen von Substrings.)
Aber: Unicode kann man ja zum Beispiel auch als UTF-32 bzw. UCS-4 speichern. Dann haben alle Zeichen die gleiche Länge (4 Bytes) und du kannst die Zeichenfunktionen wieder - mit der Ausnahme dass alle Zahlen mal vier gerechnet werden müssen - voll nutzen.
Henryk Plötz
Grüße aus Berlin
~~~~~~~~ Un-CDs, nein danke! http://www.heise.de/ct/cd-register/ ~~~~~~~~
~~ Help Microsoft fight software piracy: Give Linux to a friend today! ~~