Danke für eure Antworten.
TSQLTimeStamp hatte ich beim Wühlen auch schon gefunden, es aber wieder verworfen. TSQLTimeStamp bildet ja einen echten Datum/Zeit-Stempel ab, während Microsoft ja für den "timestamp" des
SQL-Servers ausdrücklich darauf hinweist, dass dieser mit einem Datum und einer Uhrzeit nichts zu tun hat. Ich habe es gerade dennoch mal kurz getestet, aber wie erwartet lieferte mir
Delphi-Quellcode:
[...]
currQuery.SQL.Add('SELECT @@DBTS');
currQuery.Open;
lastTimestamp:=currQuery.Fields[0].AsSQLTimeStamp;
...die Fehlermeldung, dass der Wert nicht in einen SQLTimeStamp umgewandelt werden könne.
Ich werde es wohl so oder so ähnlich machen, wie shmia vorgeschlagen hat. Oder alternativ auch so:
Delphi-Quellcode:
var lastTimestamp: TBytes;
[...]
begin
[...}
currQuery.SQL.Add('SELECT @@DBTS');
currQuery.Open;
lastTimestamp:=currQuery.Fields[0].AsBytes;
[...]
end;
Ist ja letztlich das gleiche...
Mal schauen, was mir am Ende besser gefällt. Vor allem möchte ich ja am Ende ein neue Abfrage starten, die in etwa so aussieht:
currQuery.SQL.Add('SELECT * FROM Tabelle WHERE timestamp>'+lastTimestamp);
Wobei es halt noch die Herausforderung ist, dieses "+lastTimestamp" in etwas umzuwandeln, womit dann auch der
SQL Server glücklich wird.
Bis denn
Bommel