Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi dbexpress sqlquery RecordCount (https://www.delphipraxis.net/9645-dbexpress-sqlquery-recordcount.html)

onetwosold_klaus 30. Sep 2003 18:18


dbexpress sqlquery RecordCount
 
Obwohl ich mit einer "Select Where Abfrage" in meiner Tabelle die Datenmenge einschränke erhalte ich mit RecordCount die gesamte Anzahl der Datensätze.
(Interbase 6.5 dbExpress SQLConnection SQLQuery)

with Drucki.SQLQuery do
begin
SQL.Clear;
SQL.add('Select * from PERSONNELITIES');
SQL.add('Where SVtype = "H" ');
open;
TempInteger:= RecordCount;
end;
:wall:

r_kerber 1. Okt 2003 06:49

Re: dbexpress sqlquery RecordCount
 
Hallo Klaus,

RecordCount funktioniert bei SQL-datenbanken nicht immer. Versuche doch die Anzahl der Datensätze mit
SQL-Code:
SELECT COUNT(*) FROM PERSONNELITIES
WHERE SVtype = 'H'
zu ermitteln.

Leuselator 1. Okt 2003 06:55

Re: dbexpress sqlquery RecordCount
 
interessant wäre auch zu wissen, wofür Du die Anzahl benötigst - vielleicht läßt sich der gewünschte Effekt auch ganz anders erzielen ...

onetwosold_klaus 1. Okt 2003 20:59

Re: dbexpress sqlquery RecordCount
 
Danke für die Mithilfe.

Die Lösung ist anstatt von SQLQuery SQLDataSet zu verwenden.
Dann wird auch die Anzahl der gefundenen Datensätze mit RecordCount zurückgegeben.

with Drucki.SQLDataSet do
begin
CommandText := 'Select * from PERSONNELITIES Where SVtype = "H" ';
open;
TempInteger:= RecordCount;
end;

Mfg Klaus
:firejump:

r_kerber 2. Okt 2003 07:20

Re: dbexpress sqlquery RecordCount
 
Hallo Klaus,

der Nachteil ist hierbei, dass dann immer alle Datensätze vom DB-Server auf den Client geladen werden müssen. Das kann bei großen Datenmengen durchaus sehr lange dauern! Ein SELECT COUNT ist schneller.


Alle Zeitangaben in WEZ +1. Es ist jetzt 01:35 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