Groß- Kleinschreibung

Wolfsbein

Erfahrenes Mitglied
Ich mache eine Abfrage mit mySQL. Das Ergebnis steht in einer Variable. Das Problem ist, dass mySQL nicht unterscheidet, ob die Abfrage M1 oder m1 lautet. Kann ich das ändern?
Und welchen Zeichensatz muss ich einstellen, damit auch Umlaute korrekt sortiert werden? Geht das überhaupt?
 
Ich werde versuchen, das ganze noch einmal zu präzisieren:
Code:
$mysql_query="SELECT ID, LNAME, FNAME FROM TABLE ";
$mysql_query.="WHERE BEDINGUNG LIKE '%$VARIABLE%' ORDER BY LNAME, FNAME ASC";
$VARIABLE kann jetzt M1 oder m1 sein. Leider wird dabei nicht unterschieden und bei $VARIABLE="M1" werden auch Datensätze mit m1 ausgegeben.
 
Dein Problem war mir durchaus schon klar, allerdings hab ich leider keine Lösung für Dich, die ausschließlich in MySQL wäre.

Das mit der Groß- und Kleinschreibung bekommst Du wohl deswegen nicht in den Griff, weil MySQL das einfach net kann.

Das mit den Umlauten ist ähnlich. Hier ist es so, weil MySQL sich bei Sortierungen am ASCII-Standard hält, und es gibt meines Wissens keinen Zeichensatz, wo die Umlaute "richtig" sortiert werden.

Lösungsansatz: vor dem Speichern die Umlaute von ÄÖÜ in AE OE UE umwandeln, und nachher beim Anzeigen wieder zurückwandeln.
Aber Achtung: das Zurückwandeln könnte Fehler ergeben!!!

Gruß
Dunsti
 
ich hab da nochwas gefunden, was Dein Problem mit der Groß- und Kleinschreibung lösen könnte:

SELECT * FROM tabelle WHERE spalte REGEXP 'm1'
SELECT * FROM tabelle WHERE spalte REGEXP 'M1'

Der Audruck nach dem REGEXP ist ein sogenannter "Regulärer Ausdruck" ... eine aus Perl bekannte Methode, Suchmuster zu definieren.

hoffe das hilft.

Gruß
Dunsti
 
Zurück