最近一些德爾福/ IB的應用程序的顯示的dbExpress不讀時間戳字段的毫秒部分
「記錄未找到或由其他用戶更改」
他們使用默認TSQLQuery /的TClientdataSet(或TSimpleDataSet )dbExpress的組件。
我們發現在數據庫表中,非dbExpress應用程序以毫秒存儲字段。
它看起來像dbExpress沒有從數據庫中讀取毫秒,並在更新表SQL語句的'where'條件中使用該截斷值,因此沒有匹配的記錄被更新。
更新:我們在Delphi應用程序中使用TSQLTimeStamp字段。沒有OnBeforePost處理程序正在修改字段值。
更新2
如可以在IBExternals.pas PCTimeStructure可以看到沒有一個毫秒部分。所以'設計'不支持德爾福InterBase(2009)的毫秒數。
有沒有人知道如果MS支持已被添加到德爾福的更高版本?
另請參見:https://forums.embarcadero.com/thread.jspa?threadID=109177&tstart=0 – mjn 2014-10-16 09:43:56