Mailinglisten-Archive |
Hallo Sebastian, vielen Dank für die Tipps. > -----Original Message----- > From: Sebastian Mendel [mailto:lists at sebastianmendel.de] > Michael Donning wrote: > > > ich hab hier beim Umstieg von Mysql 3 nach MySql 4 so ein > kleines Problem. > > > > Bei Mysql 4.0.16-Max ergibt folgende Abfrage TRUE bzw 1: > > Select 'Hammer'='Hämmer'; > > also, was ich sagen wollte, du musst als Attribut für die Spalte BINARY > angeben! > > http://www.mysql.com/doc/en/CHAR.html > > beim vergleichen kannst du auch sagen das BINARY-Safe verglichenw > erden soll > > http://www.mysql.com/doc/en/Case_Sensitivity_Operators.html > Das ist alles richtig. Das mit dem Binary hatte ich auch gedacht. Bisher glaubte ich aber das gilt nur, wenn man einen Schlüssel bzw. Vergleich Case Sensitive haben möchte. So muß ich extra deswegen die bestehende Anwendung umprogrammieren. Insbesondere die Suche die bisher automatisch Case Insensitive ist, muß ich nun abwandeln (UPPER Funktion) und hoffen, daß die Performance nicht zu stark leidet. Den client-Charset scheint mysql in dieser Beziehung zu ignorieren (wird erkannt aber da kann ich auch dänisch oder latin1 einstellen und 'A' bleibt gleich 'Ä'). Und den default charset vom Server kann ich nicht ändern. Da die DB (unter anderem) auf einem sogenannten "managed server" läuft. Hier nochmal der link der bestätigt, daß MySql einem manchmal ein X für ein O vormachen kann (wenn der charset/die collation dies vorsieht): http://www.mysql.com/doc/en/Charset-we-sets.html Und noch ein link, mit interessanten Kommentaren: http://www.mysql.com/doc/en/German_character_set.html Grüße, Michael Donning
php::bar PHP Wiki - Listenarchive