如何在序列容器运行之前检查条件,在2005年?

时间:2014-07-14 09:33:36

标签: sql sql-server ssis

我需要将我的数据库分成两个DB作为SSIS中的当前和历史记录,我需要在单个包中仅拆分5个事实表。所以我已经为5个表中的5个表执行了5个数据流任务在满足我的条件之后,我想要运行它(必须在每年的开始日从当前数据库到历史数据库进行拆分,即,在完成今年之后,前一年的数据必须通过运行自动转到历史数据库它)它应该每年1月1日运行。那么我需要在序列容器之前放置什么任务以及以什么方式将查询放入该任务?

       Please reply me as early as possible, I'm waiting for the response.

1 个答案:

答案 0 :(得分:0)

创建一个布尔包变量,例如StartSequenceContainer。

在执行SQL任务中使用类似的查询 -

SELECT CASE WHEN (Month(GetDate()) =1 AND Day(GetDate()) = 1) THEN 1
ELSE 0 END AS StartSequenceContainer

通过选择Single row as result set将查询结果存储在变量中,并在Execute SQL Task中配置结果表。 enter image description here

在Execute SQL任务和Sequence Container之间的Precedence路径中,将其设置为Expression和Constraint。在表达式中将其设置为布尔变量StartSequenceContainer。