Hallo.
Wenn dein Statement sich doch nicht ändert, dann solltest du es der
SQL-Eigenschaft nicht jedesmal neu zuweisen. Wenn du dein Statement der Text-Eigenschaft zuweist, dann ist
SQL.Clear überflüssig. Das Format deines DateTimePickers spielt bei deiner Vorgehensweise keine Rolle. Der BETWEEN Operator bringt dir nichts, wenn du Überdeckungsintervalle durchsuchst (hallo alzaimar). Die Klammerung deiner FROM-Klausel finde ich originell - gut, dass der
SQL Parser Spaß versteht. Und außerdem hast du uns nicht das echte Statement gezeigt.
Delphi-Quellcode:
uses
DateUtils;
const
SEL
= 'select b.gid, b.anreise, b.abreise from buchung b '
+ 'left join adressen a on b.gid = a.gid '
+ 'where b.anreise >= :dateFrom and b.abreise <= :dateTo '
+ 'order by b.anreise'
;
begin
with ADOQuery_Berichte do
begin
Close;
with Parameters do
begin
ParamValues['dateFrom'] := Trunc(DateTimePicker21.Date);
ParamValues['dateTo'] := Trunc(DateTimePicker22.Date) + 1 - OneSecond;
...
end;
Open:
end;
end;
Grüße vom marabu