UTF8-Sortierung auf MySQL 3.23.58?

UTF8-Sortierung auf MySQL 3.23.58?

am 03.02.2006 15:01:23 von christoph.soellner

Hi *,

auch googlen hat mich nicht weitergebracht.
Habe Namen und Vornamen als UTF8 in die
DB geschrieben (VarChar), und beim Sortieren
(ORDER BY nachname ASC) ploppt ein 'zgur'
vor meinen 'Abraham'.
Kann ich das abstellen, ohne dass ich Zugriff
auf die Maschine und/oder den mysqld (kann
weder neu kompilieren noch neustarten) brauche?

Danke,
Christoph

Re: UTF8-Sortierung auf MySQL 3.23.58?

am 04.02.2006 16:43:00 von jth01

Christoph schrieb:

> Kann ich das abstellen, ohne dass ich Zugriff
> auf die Maschine und/oder den mysqld (kann
> weder neu kompilieren noch neustarten) brauche?

Gib doch mal ein create table..., insert into..., select..., so dass man
das reprodzieren kann.

An sich waere das ein seltsames Verhalten, UTF8 ist schliesslich auf den
von dir benutzten Zeichen dasselbse wie ASCII.

Jens

Re: UTF8-Sortierung auf MySQL 3.23.58?

am 05.02.2006 14:54:45 von Axel Schwenke

"Christoph Söllner" wrote:

> Habe Namen und Vornamen als UTF8 in die
> DB geschrieben (VarChar), und beim Sortieren
> (ORDER BY nachname ASC) ploppt ein 'zgur'
> vor meinen 'Abraham'.
> Kann ich das abstellen, ohne dass ich Zugriff
> auf die Maschine und/oder den mysqld (kann
> weder neu kompilieren noch neustarten) brauche?

Nein. In allen MySQL-Versionen vor 4.1 beruhen Vergleich/Sortierung von
Zeichenketten auf dem byteweisen Vergleich (mit zwischengeschalteten
Tabellen für die Realisierung der für den eingestellten Charset gülti-
gen Regeln). Wenn man in älteren MySQL-Versionen UTF-8 speichern will,
sollte man den entsprechenden Spalten das BINARY-Attribut verpassen -
sonst funktionieren String-Vergleiche nicht zuverlässig. Sortieren und
case-insensitiv Vergleichen geht aber überhaupt nicht.

Mein Tip: upgraden!


XL

Re: UTF8-Sortierung auf MySQL 3.23.58?

am 06.02.2006 09:27:52 von christoph.soellner

Ok und gesetzt den Fall, ich könnte neustarten und
kompilieren? Habe gerade mit dem Provider telefoniert,
das wäre möglich, Upgrade aber nicht.
Zitat:
"Never NEVER NNNEVER (did I already mention __NEVER__)
touch a running system."
Zitat Ende.

Danke für Eure Hilfe.
Christoph

Re: UTF8-Sortierung auf MySQL 3.23.58?

am 06.02.2006 10:24:04 von Axel Schwenke

"Christoph Söllner" wrote:
> Ok und gesetzt den Fall, ich könnte neustarten und
> kompilieren? Habe gerade mit dem Provider telefoniert,
> das wäre möglich, Upgrade aber nicht.

Was an <5305sd.1ba.ln@idefix.xl.local> hast du nicht verstanden?
MySQL 3.23.x *kann* *nicht* mit Multibyte-Zeichensätzen.

> Zitat:
> "Never NEVER NNNEVER (did I already mention __NEVER__)
> touch a running system."
> Zitat Ende.

Schönen Gruß an deinen Provider in seiner kalten Höhle auf seiner
Erdscheibe. BTW, *wir* haben hier Feuer und Rad und mehr.

Und laß dir nochmal den Zusammenhang zwischen "running system" und
"kann kein UTF-8" erklären!


XL