![]() |
Datenbank: BDE • Zugriff über: BDE SQL
Datensätze mit SQL zählen
Hallo
Ich möchte die Datensätze einer Tabelle mit SQL zählen und als StatusPanel ausgeben. Dafür habe ich folgenden Quelltext:
Delphi-Quellcode:
In Variable Anzahl soll die gesamtZahl der Datensätze dieser Tabelle stehen. Es steht aber eine undefinierbare hohe Zahl (1243048) im Statuspanel. Egal welche Tabelle ob mit 5 oder 100000 Datensätzen diese Zahl ist dieselbe.
with Query2 do
begin Active:= false; SQL.Clear; SQL.Add('Select Count (feld001) as AnZahl from '+ ComboBox1.Text) ; StatusBar1.Panels[0].Text:=IntToStr(Anzahl ) ; Active := true; end; Auch das zurücksetzen der Variable Anzahl (Anzahl := 0) führt zu dem Ergebnis,daß in dem Statuspanel 0 steht. Für mich steht fest dieser Textmacht alles andere nur nicht zählen. Wo ist mein Fehler? |
Re: Datensätze mit SQL zählen
Die Reihenfolge ist Dein Fehler. Du musst die Datenmenge erst öffnen, bevor Du Werte auslesen kannst.
|
Re: Datensätze mit SQL zählen
Also etwa so? Und anschließend schliessen?
Delphi-Quellcode:
Nach dem Ausprobieren: Fehlermeldung keine SQL Anweisung verfügbar.
with Query2 do
begin Open; Active:= false; SQL.Clear; SQL.Add('Select Count (feld001) as AnZahl from '+ ComboBox1.Text) ; StatusBar1.Panels[0].Text:=IntToStr(Anzahl ) ; Close; Active := true; end; |
Re: Datensätze mit SQL zählen
Das Grundgerüst für eine Query sieht bei mir immer so aus:
SQL-Code:
gruß
Query.close; //sicher ist sicher
query.sql.text:='select irgendwas from irgenwo'; query.open; if not queryeof repat ... query.next; until query.eof; query.close; K-H |
Re: Datensätze mit SQL zählen
Delphi-Quellcode:
//zur Sicherheit Datenmenge schließen
Query2.Close; //Abfragetext setzen Query2.SQL.Text := 'Select Count(feld001) as Anzahl from '+ ComboBox1.Text; //Datenmenge öffnen Query2.Open; //Ergebnismenge auslesen StatusBar1.Panels[0].Text:=IntToStr(Query2.FieldByName('Anzahl').AsInteger); //und wieder schließen Query2.Close; |
Alle Zeitangaben in WEZ +1. Es ist jetzt 01:12 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz