Hallo zusammen,
mein Problem ist, dass ich mit einen Select direkt in der
DB auch ein richtiges Ergebnis bekomme.
select * from fam_check where DATE(verfall, + '1 year') <= CURRENT_DATE AND (DATE(p_datum, + '5 years') <= CURRENT_DATE)
übertrage ich den Select in Delphi bekomme ich kein Ergebnis
Delphi-Quellcode:
main.qryproducts.FetchOptions.AutoClose := False;
main.qryproducts.SQL.Clear;
// erster Versuch so:
main.qryproducts.SQL.Add('SELECT * ');
main.qryproducts.SQL.Add('FROM fam_check ');
main.qryproducts.SQL.Add('WHERE DATE(verfall, + '+ quotedstr('1 year')+ ' ) <= CURRENT_DATE' );
main.qryproducts.SQL.Add('AND (DATE(p_datum, + ' + quotedstr('5 years') +') <= CURRENT_DATE) ' );
// zweite Versuch mit Parametern
main.qryproducts.SQL.Add('SELECT * ');
main.qryproducts.SQL.Add('FROM fam_check ') ;
main.qryproducts.SQL.Add('WHERE DATE(verfall, + :jahr_begin ) <= CURRENT_DATE' );
main.qryproducts.SQL.Add('AND (DATE(p_datum, + :jahr_end ) <= CURRENT_DATE) ' );
main.qryproducts.ParamByName('jahr_begin').AsString := '1 year';
main.qryproducts.ParamByName('jahr_end').AsString := '5 years';
main.qryproducts.SQL.SaveToFile('S:\log.txt');
main.qryproducts.Open;
while not main.qryproducts.Eof do
begin
loeschfristen_apbetro_fam_insert_lv(main.qryproducts.FieldByName('ID').AsString,
main.qryproducts.FieldByName('name').AsString,main.qryproducts.FieldByName('dafo_kurz').AsString);
main.qryproducts.Next;
end;
die Ausgabe im Logfile kann ich 1:1 in die
DB kopieren und es geht. Woran ligt es? Hoffe ihr könnt mir helfen thx.