Entwickler-Ecke
Datenbanken - Überprüfen Wieviele Einträge in der Datenbank gefunden wurde
bruce185 - Do 04.05.06 01:46
Titel: Überprüfen Wieviele Einträge in der Datenbank gefunden wurde
hi,
also ich wollte mal fragen wie ich überprüfen kann Wieviele Einträge in der Datenbank gefunden wurde, z.B. gebe ich an ein, und dann soll eine Meldung kommen Wieviele Einträge mit an gefunden wurde, so sieht meine suchfunktion aus:
Delphi-Quelltext
1:
| Table1.Locate('Vorname', Edit1.Text, [loCaseInsensitive, loPartialKey]); |
und wenn ich dann suche, dan soll z.B. so eine Meldung kommen:
Es wurden mit dem Suchbegriff "an" 7 Einträge gefunden.
wie mache ich das am einfachsten?
Gruss Andreas
mkinzler - Do 04.05.06 06:42
Da durch eine Locate die Anzahl der datensätze in einem dataSet nicht verändert wird da nur der Datensatzzeiger verschoben wird, kannst du so nicht die Anzahl der passenden Datensätze ermitteln. In diesem Fall würde ich die den Einsatz einer expliziten Abfgare vorschlagen.
jasocul - Do 04.05.06 07:54
@mkinzler:
bruce benutzt ein TTable. Da ist nicht viel mit einer Abfrage zu machen.
(persönliche Anmerkung für mkinzler: Ich habe dich erwischt :wink:)
@bruce185:
Was mkinzler meint ist die Verwendung eines TQuery mit einer SQL-Abfrage. Evtl geht es auch mit der Filter-Funktion einer TTable-Komponente. Aber ich bin mir nicht sicher, ob dabei die richtige Anzahl der Datensätze zurück gegeben wird. Das müsstest du mal testen. Wobei ich die Variante mit SQL bevorzugen würde.
raiguen - Do 04.05.06 11:34
Moin :-)
Jo, mit TTable.Filter lässt sich das so machen:
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7:
| Table1.DisableControls; Table1.Filter := 'Vorname=' + QuotedStr ( Edit1.Text ); Table1.FilterOptions := [foCaseInsensitive]; Table1.Filtered := True; ShowMessage ( Format ('%d Einträge für %s gefunden', [ Table1.RecordCount, Edit1.Text ] ) ); Table1.Filtered := False; Table1.EnableControls; |
Mit Edit1.Text = 'Reiner' wird nur nach exakter Übereinstimmung gefiltert;
mit Edit1.Text = 'rein* wird alles gefiltert, was mit Rein anfängt, also Reiner, Reinhard, Reinhold etc...
bruce185 - Do 04.05.06 20:35
cool, ich danke euch für die hilfe, nun funzt es :D
Gruss Andreas
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2025 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!