【发布时间】:2010-12-17 17:26:14
【问题描述】:
我编写了一个 SSIS 包,它将 Excel 工作簿中的所有工作表读取到数据库中。
它大部分都在工作。它从工作簿中循环读取所有工作表。
唯一的缺点是它会读取 sheetname 然后是 sheetname$,因此会复制大量数据。我对 SSIS 很陌生,所以不确定如何使用我的 Foreach 循环(或其中的东西)过滤它。
谁能指出我正确的方向?
谢谢
【问题讨论】:
我编写了一个 SSIS 包,它将 Excel 工作簿中的所有工作表读取到数据库中。
它大部分都在工作。它从工作簿中循环读取所有工作表。
唯一的缺点是它会读取 sheetname 然后是 sheetname$,因此会复制大量数据。我对 SSIS 很陌生,所以不确定如何使用我的 Foreach 循环(或其中的东西)过滤它。
谁能指出我正确的方向?
谢谢
【问题讨论】:
如果您在变量中有工作表名称,则可以在优先约束(任务之间的行)中测试变量的值。在您的 Foreach 容器中,右键单击该行并选择 Edit... 这将显示 Precedence Constraint Editor。
在编辑器中,在评估操作输入中选择表达式和约束。将值保留为 Success 以指示上一个任务必须成功才能运行下一个任务。向 Expression 框中添加一个测试,如果该测试为真,将让下一个任务运行。该表达式可以测试您要处理的工作表名称。对于所有其他流程,将不会继续执行下一个任务,并且当前的 Foreach 迭代将完成。
【讨论】: