Veröffentlicht 24. März 200421 j Was genau ist eigentlich der unterschied, wenn ich in der WHERE klausel "=" als vergleichsoperator oder "like" verwende? die Doku gibt diesbezüglich nicht wirklich was aussagekräftiges her (bzw ich habe es nicht gefunden )
24. März 200421 j Nun, der Vergleichsoperator "=" liefert Dir die Datensätze, die GENAU dem angegebenen Wert entsprechen, "like" hingegen kann man mit "ungenauen" Werten bestücken... Besser ein Beispiel: SELECT * FROM tab_test WHERE Postleitzahl = '90000' liefert alle Datensätze mit der Postleitzahl 90000 zurück, wobei hingegen SELECT * FROM tab_test WHERE Postleitzahl LIKE '9%' alle Datensätze zurückliefert, deren Postleitzahl mit 9 beginnen und SELECT * FROM tab_test WHERE Postleitzahl LIKE '%9%' alle Datensätze zurückliefert, deren Postleizahl eine 9 enthält.
24. März 200421 j also gilt: SELECT * FROM tab_test WHERE Postleitzahl = '%9%' ==> fehler? Main Problem ist, dass nicht zwischen Groß / kleinschreibung unterschieden wird...
24. März 200421 j Nur mit dem Like-Operator sind Abfragen mit beliebigen vorangehenden bzw. nachfolgenden Zeichen moeglich. Original geschrieben von HELLinG3R Main Problem ist, dass nicht zwischen Groß / kleinschreibung unterschieden wird... Wo besteht da genau Dein Problem? Soll eine Abfrage erstellt werden, die auch alles unabhaengig von der Gross-/Kleinschreibung findet?
24. März 200421 j ich habe den query leider zuhause. aber in etwa ist das mein problem: ich habe eine userdatenbank. eine loginfunktion greift auf diese datenbank zu und prüft username und passwort; es ist jedoch irrelevant, ob ich in meinem Formular "Test" oder "test" als usernamen angebe. (obwohl nur "Test" existiert, gespeichert als char(12)) möglicherweise liegt das problem beim übergeben der formulardaten an die neue seite...?
24. März 200421 j Hallo, dann solltest Du die entsprechende SQL Funktion zur Konvertierung in Groß- bzw Kleinbuchstaben benutzen und dann erst vergleichen. Frank
Erstelle ein Konto oder melde dich an, um einen Kommentar zu schreiben.