【发布时间】:2015-12-13 19:55:01
【问题描述】:
我们有一个结果表,其中包含来自 5-6 个源表的数据。数据以每周为单位显示。我们决定编写一个存储过程并从 SQL Server 作业中调用它,以便每周将数据拉入结果表中。
如果在一周内源表中的任何数据发生更改/更新,我们必须仅在结果表中更新这些记录。现在我们正在考虑两种方法来做到这一点:
每当源表在同一周内发生更改/更新时,创建触发器以更新结果表。
使用
[modified date]列来识别源表中的修改记录并更新结果表中的记录。
我的问题是:
- 我们是否有任何其他轻量级方法可以在 SQL Server 或 SSIS 中做同样的事情?
- 对于每周将数据加载到结果表中,除了 SQL Server 或 SSIS 中的 SQL Server 作业,我们还有其他方法吗?
感谢您的帮助。
【问题讨论】:
-
您是只关心从一周到下一周的状态,还是需要捕获每周的所有变化?第一个更容易处理计划作业和每个表中的rowversion 列。第二个是触发器可以处理的事情。 “视情况而定”子句:有多少数据?它多久改变一次?读取与写入平衡? ...
-
有大量数据。由于所有源表都是事务表,因此它会经常更改。我需要捕捉所有的数据变化。
-
谁能告诉我,我们可以在这些场景中使用 Change Data Capture IN SSIS
标签: sql sql-server tsql ssis