Steffen: Mysqlbug oder sowas?! ;-)

Hallo miteinander,

ich bin auf einer meiner Webseiten auf ein komisches Problem gestoßen:

die mysql-abfrage "SELECT * FROM tabelle WHERE feld LIKE '%ü%'"
liefert mir als Ergebnis zwar richtig alle Datensätze zurück, die ein ü enthalten, aber zudem auch alle, die ein y enthalten... was natürlich unpraktisch ist.

Ich habe das auf mehreren Mysql-installationen in den versionen 3.23 und 4.0.12 und unterschiedlichen tabellen und feldtypen getestet - es ist immer so.

Bitte sagt mir nicht, dass ich die daten doch als html-sonderzeichen speichern soll usw. - es gibt einfach bei uns usernamen mit umlauten und daran kann ich nichts mehr ändern ;-)

mfg & danke für die hilfe,
steffen

p.s.: als demo könnt ihr auf die homepage gehen und euch nach einem klick auf "suchen" davon überzeugen, indem ihr in das feld für Benutzername einfach ein ü eingebt.

  1. Hallo!

    die mysql-abfrage "SELECT * FROM tabelle WHERE feld LIKE '%ü%'"

    SELECT * FROM tabelle WHERE feld BINARY LIKE '%ü%'

    MfG, André Laugks

    --
    L-Andre @ gmx.de
    1. SELECT * FROM tabelle WHERE feld BINARY LIKE '%ü%'

      Hi,

      danke. Optimal, auch wenn sich ein kleiner Fehler eingeschlichen hat:
      das BINARY muss nach das LIKE => SELECT * FROM tabelle WHERE feld LIKE BINARY '%ü%'

      mfg,
      steffen

      1. Hallo!

        das BINARY muss nach das LIKE => SELECT * FROM tabelle WHERE feld LIKE BINARY '%ü%'

        Upppssss stimmt! So sieht es auch logischer aus.

        MfG, André Laugks

        --
        L-Andre @ gmx.de