AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Abfrage per Eingabe

Ein Thema von abi · begonnen am 17. Jun 2004 · letzter Beitrag vom 18. Jun 2004
Antwort Antwort
Seite 1 von 4  1 23     Letzte »    
abi

Registriert seit: 20. Apr 2004
Ort: Köln
143 Beiträge
 
#1

Abfrage per Eingabe

  Alt 17. Jun 2004, 12:44
Hallo
ich habe eine DB und ein Edit Feld.

Jetzt will ich in meinem Editfeld, z.b. einen Namen schreiben und dann soll angezeigt werden ob dieser Datensatz vorhanden ist.

Ich wollte des mit OnKeyUp machen damit ich nach jeden Buchstaben prüfen kann, ob der Datensatz vorhanden ist.

Meine DB sicht vereinfacht so aus.
Nummer
Geber_Bezeichnung
Auflösung
usw.

Jetzt wollte ich z.b. Geber_Bezeichnung suchen.

mfg
abi
Wer nicht fragt, bleibt dumm.
  Mit Zitat antworten Zitat
Benutzerbild von Ultimator
Ultimator

Registriert seit: 17. Feb 2004
Ort: Coburg
1.860 Beiträge
 
FreePascal / Lazarus
 
#2

Re: Abfrage per Eingabe

  Alt 17. Jun 2004, 12:52
Probier das doch mit dem OnChange-Ereignis.
Julian J. Pracht
  Mit Zitat antworten Zitat
abi

Registriert seit: 20. Apr 2004
Ort: Köln
143 Beiträge
 
#3

Re: Abfrage per Eingabe

  Alt 17. Jun 2004, 12:58
Hallo
mein Problem ist eh wie schreibe ich des in meinen SQL Text.

Da kann ich doch keine Variablen rein setzen, oder doch???

Ansonsten muss ich mal schauen was besser ist.

abi
Wer nicht fragt, bleibt dumm.
  Mit Zitat antworten Zitat
Benutzerbild von Stevie
Stevie

Registriert seit: 12. Aug 2003
Ort: Soest
4.008 Beiträge
 
Delphi 10.1 Berlin Enterprise
 
#4

Re: Abfrage per Eingabe

  Alt 17. Jun 2004, 13:04
Ich würde es mit einer LIKE-Abfrage machen:
Delphi-Quellcode:
procedure TForm1.Edit1Change(Sender: TObject);
begin
  DataSet1.Filter := 'Bezeichnung LIKE ''' + Edit1.Text + '%''';
end;
Stefan
“Simplicity, carried to the extreme, becomes elegance.” Jon Franklin

Delphi Sorcery - DSharp - Spring4D - TestInsight
  Mit Zitat antworten Zitat
abi

Registriert seit: 20. Apr 2004
Ort: Köln
143 Beiträge
 
#5

Re: Abfrage per Eingabe

  Alt 17. Jun 2004, 13:15
Hallo Stevie
danke für denn Tipp.

Jetzt musst du mir nur noch sagen was DataSet1.Filter ist.

Ich jetzt nur ne qrGeber und dsGeber.

Wie bekomme denn das.

Mercy.
mfg
abi
Wer nicht fragt, bleibt dumm.
  Mit Zitat antworten Zitat
Benutzerbild von Stevie
Stevie

Registriert seit: 12. Aug 2003
Ort: Soest
4.008 Beiträge
 
Delphi 10.1 Berlin Enterprise
 
#6

Re: Abfrage per Eingabe

  Alt 17. Jun 2004, 13:26
Ich nehme mal anhand der Prefixe an, dass qr für Query und ds für DataSource steht...
Deine Query (welcher Art auch immer) ist von TDataSet abgeleitet (da du sie sonst nicht der DataSource zuweisen könntest)
und verfügt somit über die Eigenschaften Filtered (Boolean) und Filter (String)...
Stefan
“Simplicity, carried to the extreme, becomes elegance.” Jon Franklin

Delphi Sorcery - DSharp - Spring4D - TestInsight
  Mit Zitat antworten Zitat
Albi

Registriert seit: 4. Mai 2003
Ort: Berlin
458 Beiträge
 
Delphi 7 Professional
 
#7

Re: Abfrage per Eingabe

  Alt 17. Jun 2004, 13:30
Hallo,

dataset kannst Du mit der Table kompo vergleichen. Aber da du eh schon alles über Query's macht, kannst Du das auch über ein Query lösen.

Code:
Select * From DB Where Bezeichnung Like ''+Edit1.Text+'%'''
Das ganze in das wie schon gesagt OnChange Ereignis eintragen und schon ist es fertig. Nun wird jedes mal nach dem Du eine Taste gedrückst hast wird dieses Ereignis ausgelöst.

Kleiner Hinweis, soll diese DB über ein Netzwerk laufen, würde ich dir davon abraten. Da ansonsten bei großen Datenmengen es zu Verzögerung kommen kann.
  Mit Zitat antworten Zitat
Benutzerbild von Stevie
Stevie

Registriert seit: 12. Aug 2003
Ort: Soest
4.008 Beiträge
 
Delphi 10.1 Berlin Enterprise
 
#8

Re: Abfrage per Eingabe

  Alt 17. Jun 2004, 13:34
Das kommt drauf an. Ich nehme jetzt mal an, dass es nicht zigtausend Datensätze gibt, aber trotzdem würde bei der Eingabe von "Wasweißich" 10mal (!) eine Anfrage an die Datenbank gestellt. Wenn es nicht allzu viel Daten sind, ist es besser, sie erstmal alle abzufragen und dann einzuschränken.
Stefan
“Simplicity, carried to the extreme, becomes elegance.” Jon Franklin

Delphi Sorcery - DSharp - Spring4D - TestInsight
  Mit Zitat antworten Zitat
abi

Registriert seit: 20. Apr 2004
Ort: Köln
143 Beiträge
 
#9

Re: Abfrage per Eingabe

  Alt 17. Jun 2004, 13:40
Hallo Albi, Stevie
danke für die Hilfe.

Es sind vielleicht 400 Datensätze.

Und ich wollte auch das er nach jeden Tast druck schaut ob er was hat.

Muss des jetzt aber erst mal testen, melde mich.

Wenn ich mal wieder nicht weiter komme.

ciao

Chrsitian
Wer nicht fragt, bleibt dumm.
  Mit Zitat antworten Zitat
abi

Registriert seit: 20. Apr 2004
Ort: Köln
143 Beiträge
 
#10

Re: Abfrage per Eingabe

  Alt 17. Jun 2004, 14:10
Hallo Stevie
hab gerade deinen Code ausprobiert.

Leider geht er nicht.

Code:
procedure TForm1.Button9Click(Sender: TObject);
begin

 dsSuchen.DataSet.Filter := 'Geber_Bezeichnung LIKE ''' +Edit1.Text+ '%''';
end;
Ich bekomme dann folgende Fehlermeldung.

Zitat:
Operation nicht anwendbar
Kannst du mir da nochmal helfen.

abi
Wer nicht fragt, bleibt dumm.
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 4  1 23     Letzte »    


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 00:17 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz