我有一组16个SQL Server表,它们从Web UI不断更新。我需要跟踪这些表发生的每一个变化,并每10分钟调用一个单独的系统,通过Windows服务发送每个插入或更新的行。
我可以复制架构并创建另一组16个类似的表来跟踪原始集中的更改。每次修改相应的源表时,都会有触发器将新行插入跟踪表(加上ins / upd标志,时间戳等字段)。
我想知道有没有更好的方法可以使用1个(或几个)可以保存来自多个表的数据的公共表?什么东西不会迫使我维护一组重复的跟踪表?
答案 0 :(得分:3)
如果您拥有Enterprise Edition,Change Data Capture是您可以使用的选项。
其他版本有Change Tracking,它不会跟踪历史记录,但可以为您带来净变化。
比较:https://technet.microsoft.com/en-us/library/Cc280519(v=SQL.105).aspx