Entwickler-Ecke
Datenbanken - SQL, Suche mit Platzhalter
TimHa - Fr 17.03.06 20:55
Titel: SQL, Suche mit Platzhalter
Hallo zusammen!
Ich möchte in meiner Datenbank Kunden suchen können. Die gefundenen Kunden sollen in einem DBGrid angezeigt werden (+ noch ein paar Daten aus einer anderen Tabelle). Ich habe alles schon programmiert und soweit funktioniert es auch. Suchbegriff in Edit Feld. Button zum starten des Querys. Wert wird übergeben und Ergebnis wird im DBGrid angezeigt.
Leider muss ich den Namen des Kunden immer zu 100% richtig angeben. Ich kann also nicht nach "G*" suchen.
Der SQL Code des Querys lautet:
Quelltext
1: 2:
| where kunde.kundennr = rechnung.kundennr and Name = :eingabename; |
Wie muss ich die Where Klausel abändern damit ich mit Platzhaltern (*) arbeiten kann?
Danke! :)
Tim
mkinzler - Fr 17.03.06 21:01
SQL-Anweisung
1: 2:
| where kunde.kundennr = rechnung.kundennr and Name like :eingabename; |
Delphi-Quelltext
1:
| query.ParamByName('eingabename').Value := <Eingabename> + '%'; |
Delete - Fr 17.03.06 21:28
gar nicht. brauchst nur im eingabefeld eingeben "g%" wenn du nur ein zeichen maskieren willst dann "g_".
viel erfolg
TimHa - Sa 18.03.06 18:17
So, es hat alles funktioniert.
Den SQL Code habe ich so geändert wie es bei mkinzlers Lösung steht.
Den Button, der die Variable übergibt hat u.a. folgenden Quelltext:
Quelltext
1:
| Query_Kundensuche.ParamByName('eingabename').AsString:=Edit_name.Text + '%'; |
Damit funktioniert die Suche auch wenn ich nur den Buchstaben "G" eintippe. :)
Danke!!
Tim
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2026 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!