Beim Lesen von TDateTime-Werten aus einer SQLite-Datenbank mit FireDAC wird stets die Uhrzeit abgeschnitten oder auf 0 gesetzt.
Also 19.09.2020 00:00:00
Auch Anweisungen wie FormatDateTime('dd.mm.yyyy hh:mm:ss', LField.AsDateTime) helfen nicht weiter.
FormatOptions in Connection und
Query sind versucht, DateTimeFormat in den Params hilft nicht weiter, DisplayFormat in der TField-Komponente bringt nichts... was könnte man sonst noch versuchen?
Schau mal, was AsString und AsFloat liefern.
Im besten Fall kann man AsFloat nehmen, addiert ein Tage-Bias und fertig ist das TDateTime.
Im schlimmsten Fall nimmt man sich das AsString und muss es selbst parsen.
Dazu bietet sich jeweils ein
class helper for TField
an.
Ich mache das bei
MSSQL so, weil selbst Windows 10 von sich aus maximal
SQL Server 2005 unterstützt und ich keine Lust auf eine Abhängigkeit vom
SQL Server Native Client habe.