Entwickler-Ecke

Datenbanken - Suchfeld mit ADO!


thoughtless - Sa 13.07.02 17:23
Titel: Suchfeld mit ADO!
also ich hoffe ich kann hier erklären um was es geht..

ich habe mit ado eine verbindung mit einem access file aufgebaut ..
mit einer query filtere ich nun einen kunden mit einer gewissen id heraus..


Quelltext
1:
2:
3:
4:
  new.active:=false;
  new.sql.clear;
  new.sql.add('SELECT * FROM kunde WHERE id = ' + search.Text + ';');
  new.active:=true;


soweit so gut... nun möchte ich aber eine andere suche realisieren...

kennt jemand die taste j bei winamp?? genau so eine suche möchte i kreiren.. dann aber natürlich nicht mehr mit der id sondern mit dem namen... hat jemand eine idee?

sollte jemand die taste j bei winamp nicht kennen :lol: :
man hat dort ein such feld und darunter eine liste.. mit jemdem buchstaben der zusätzlich eingegeben wird, wird die liste auf die felder eingegränzt die jenen buchstaben noch enthalten....

alles klar?

danke im vorraus!!!


Klabautermann - Sa 13.07.02 17:34

Hallo,
ich kenne zwar die Taste bei winamp nicht aber ich schätze mal du suchst soetwas:

Quelltext
1:
2:
3:
4:
new.active:=false; 
 new.sql.clear; 
 new.sql.add('SELECT * FROM kunde WHERE Name LIKE %' + search.Text + '%;'); 
 new.active:=true;


Gruß
Klabautermann


thoughtless - Sa 13.07.02 17:42
Titel: nicht ganz,,
danke aber das hat nicht funktioniert...


Quelltext
1:
2:
3:
4:
  new.active:=false;
  new.sql.clear;
  new.sql.add('SELECT * FROM kunde WHERE id LIKE ' + search.Text + ';');
  new.active:=true;


hab es jetzt so funktioniert das es mitn den % zeichen überhaupt nur eine fehlermeldung gibt...

wenn ich das mit like richtig verstanden habe musste z.b. bei einer id like 1.. auch die 12 ausgegeben werden.. oder? .. wie auch immer, es ist nicht der fall...

;(


Klabautermann - Sa 13.07.02 17:58

Hi,

das % ist eigentlich ein Platzhalter, ähnlich dem * beim suchen nach Dateinamen.
Vieleicht will der da noch anführungsstriche, versuche mal:

Quelltext
1:
2:
3:
4:
new.active:=false; 
new.sql.clear; 
new.sql.add('SELECT * FROM kunde WHERE Name LIKE ''%' + search.Text + '%'';'); 
new.active:=true;

oder

Quelltext
1:
2:
3:
4:
new.active:=false; 
new.sql.clear; 
new.sql.add('SELECT * FROM kunde WHERE Name LIKE "%' + search.Text + '%";'); 
new.active:=true;


Gruß
Klabautermann


thoughtless - Sa 13.07.02 18:03
Titel: GENIAL!
perfekt genial...

es hat gefunkt! ;)


danke!