Zitat von
Alter Mann:
Hallo,
Filter oder TQuery scheiden aus, ...
Warum sollte TQuery nicht genausogut funktionieren bzw vllt. sogar schneller als das stäbdige Locate() in einer Schleife?
Ausm Kopf mal die grundsätzliche Idee:
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
procedure DatumAuslesen(const ADAT, EDAT: TDateTime);
begin
if not Query1.Prepared then
begin
Query1.SQL.Text := 'SELECT starttime FROM MeineTabelle ' +
'WHERE starttime BETWEEN :ANFDAT AND :ENDDAT';
Query1.Prepare;
end;
Query1.Close;
Query1.Params[0].AsDateTime := ADAT;
Query1.Params[1].AsDateTime := EDAT;
Query1.Open;
end;
var
AnfangsDatum, EndDatum : TDateTime;
...
begin
ListBox1.Items.Clear;
AnfangsDatum := ...;
EndDatum := ...;
DatumAuslesen(AnfangsDatum, EndDatum);
if not Query1.Empty then
begin
ListBox1.Items.Add(Query1.FieldValues['StartTime']);
Query1.Next;
end;
end;
...
end;
Die Werte für AnfangsDatum und EndDatum sind natürlich entsprechend zu setzen.