Hallo,
wie schön, daß hier mal alle Freunde von utf-8 versammelt sind. Verratet mir doch mal eins: wie sucht Ihr nicht-case-senitiv in utf-8, also z.B. ein ä als [äÄ]? ...Achso: es geht um DBs, die keine multibyte-Unterstützung haben.
Du meinst, UTF-8 transformierte Octet-Streams stehen als Feldinhalte in Text-Feldern von Datenbanken, die kein UTF-8 unterstützen?
Dann sucht man, wenn Du SELECT ... WHERE meinst, nach Inhalten mit Zeichen außerhalb US-ASCII nicht-case-senitiv in diesen PseudoStrings genau so wie case-senitiv, nämlich gar nicht, weil es nicht geht ;-)).
Wenn im Feldinhalt "Höhe" als "48c3b66865" steht, Du aber nur WHERE feld = "Höhe" eingeben kannst, und Höhe eben in ISO-8859-1 "48f66865" ist, dann kann dort nichts übereinstimmen.
Du hast keine Chance, nutze sie ;-)). Man könnte, wenn die Datenbank das anbietet, mit WHERE feld = "H".concat(0xc3b6).concat("he") suchen. Oder man könnte mit Hilfe des ersten Teils der Funktion von Christian, wo es um Zwei-Octet-UTF-8, beginnend mit c<0xe0 geht, die UTF-8-Octetstreams micht in Entities, sondern in 1-Byte-Hex-Werte umwandeln. Das würde dann in Teilen ISO-8859-1 entsprechen und aus "c3b6" würde "f6". Diese Lösung wäre aber nur für ISO-8859-1-Sonderzeichen geeignet. ISO-8859-2-Sonderzeichen würden falsche Resultate bringen.
viele Grüße
Axel