LastUpdatedOn datetime2每次更新 SQL Server 表中的行时,我都想更新列。为此,我正在考虑使用After Update触发器设置LastUpdatedOn为sysutcdatetime(). 此触发器还负责检测列更改并将旧值保存到历史表中。我的问题是,触发器方法会保存更新行时间的准确表示吗?实际更新与After Update触发更新之间是否存在时间延迟LastUpdatedOn?
此外,阅读http://technet.microsoft.com/en-us/library/bb630387.aspx,看起来GetSystemTimeAsFileTime()跨多个服务器可能不准确。在具有大量并发写入的分片数据库架构中,检测事件时间的最可靠方法是什么,以便我知道整个集群中的事件顺序是正确的?
PS 我考虑过使用Change Data Capture,但它在 SQL Azure 中不可用。