使用Timestamp或Rowversion在ETL期间捕获更新

时间:2014-03-28 15:09:45

标签: sql-server sql-server-2012

我的数据仓库ETL从我们的HIS中检索使用WHERE子句中的日期范围的记录。关注的是,可以在日期范围内插入或更新记录,但SELECT不会记录。我如何使用rowversion或时间戳来确保我的ETL获取这些更改?那段代码会是什么样的?

SSIS SQL Task伪代码:       从HIS.Patient.PatientAddress中选择*      其中editdate> @LogFileLastETLDate和editdate< MAX(HIS.Patient.editdate)

1 个答案:

答案 0 :(得分:0)

我在其中一个项目中做了同样的事情:

  1. 在源表
  2. 上使用标识列(ID)
  3. 检查
  4. 上的最大ID
  5. 目标检查来源
  6. 上的最大ID
  7. 从ID
  8. 的来源转移 MaxTarget和MaxSource之间的