Einzelnen Beitrag anzeigen

raiguen
(Gast)

n/a Beiträge
 
#6

Re: Locate und VarArrayCreate

  Alt 21. Jun 2007, 18:34
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.
  Mit Zitat antworten Zitat