As you can read in your help file UniDAC.chm (UniDac 3.70.0.17 28-Apr-2011) chapter "Unified SQL" => "Macros Reference" the DATETIME Macro for SQLite should be "TIMESTAMP" - so your documentation is correct, but in source (SQLiteUniProvider.pas) it's not.
This leads to problems accessing the DateTime fields as .AsDateTime because they threaded as Memo-Fields and not as Date-Fields in Delphi.
My workaround/fix in SQLiteUniProvider.pas:
Change:
Code: Select all
LiteFunctions.AddObject('TODATE', TObject(PChar('CAST(%s AS TEXT)')));
LiteMacros.AddObject('DATETIME', TObject(PChar('TEXT')))
Code: Select all
LiteFunctions.AddObject('TODATE', TObject(PChar('CAST(%s AS TIMESTAMP)')));
LiteMacros.AddObject('DATETIME', TObject(PChar('TIMESTAMP')))Elias