我有一个 SQL 查询,结果为 1 或 0(基于输入)。我想在现有包中引入一个新的 DataFLow 任务,如果查询结果 1 表明 Job 失败,则必须在其中执行 DataFlow 任务。如果查询结果为 0,它必须转到下一个 DataFlow 任务吗?你能帮我解决这个问题吗?
问问题
168 次
2 回答
1
- 声明一个变量——比如 iResult 为 int
- 在控制流表面上,放置执行 SQL 任务。
- 设置你的 SQLStatement;说 - 选择 1 作为我的结果。
- 将结果集设置为单行。
- 转到结果集部分。将结果名称设置为 MyResult。从下拉列表中选择 User::iResult 作为变量名。
- 现在,将两个 DFT 放在控制流表面上。
- 将它们都加入您在上述步骤中处理的执行 SQL 任务(两条绿线)。
- 双击优先约束之一。将评估操作设置为表达式和约束,将值设置为成功,将表达式设置为 @iResult == 0。
- 对另一个重复,并将 Expression 设置为 @iResult == 1。
理想情况下,您应该使用布尔变量。这会带来一点挑战。我将把它作为一个小挑战留给你和下一个登陆这里的读者。:-)
于 2013-03-30T13:10:27.673 回答
0
换一种方式。使用 SQL 命令收集 1/0 并放入变量中。
然后使用该变量来决定执行哪个数据流。
于 2013-03-30T08:53:22.730 回答