我的SSIS包有一个执行SQL任务,它有一个在运行时需要日期时间过滤器的查询。
此过滤器的值应该是程序包成功运行的最后一个日期时间。
检索,保留和使用此lastrun日期时间的标准/最佳方法是什么?
答案 0 :(得分:2)
对于那种事情,我有一个" config"数据库中的表来存储值。然后,每次程序包运行时都可以读取和更新。您也可以使用文本文件,但这不安全。
编辑:
我通过在调用存储过程的Package的末尾调用SQL Task来实现此目的。该SP接受指示成功(1)或失败(0)的位参数。 SP使用GetDate()来记录Proc运行的时间(这是Package完成的时间)。
答案 1 :(得分:0)
正如DeanOC所说,我总是在我的包装中有一个存储这种东西的步骤。它可以像insert select current timestamp...
那样简单。或者它可能是我正在处理的数据中的时间戳列的最大值,因此下次运行我可以按...> StoredMaxTimestamp
进行过滤。