2016-11-22 65 views
0

我有一个包含不同SQL文件的文件夹。现在在SSIS包中,在foreach循环中,我正在读取存储在每个sql文件中的查询(使用脚本任务),然后在执行脚本任务中执行查询,从而在变量中获取结果集。在单个SSIS包中为不同的sql文件生成平面文件

现在我想要生成与这些结果集变量中的每一个相对应的平面文件。

是否可以使用此过程(我尝试过使用dataflowtask,但它没有使用变量作为源)还是应该采用不同的方法?

+0

这是你第一个包或者你尝试任何其他方法? – Aravind

+0

我试图在foreach循环中使用dataflowtask,但我不认为每次迭代我们都可以将命令文本更改为不同的查询... – Asin

+0

你shuld尝试在这种情况下的动态查询..需要更清晰的问题 – Aravind

回答

0

OLE DB SourceData access mode下有一个选项SQL command from variable。我认为这是你正在寻找的人。

您可以使用参数化查询,如下截图: enter image description here

虽然建议的解决方案: enter image description here

+0

此选项用于参数化查询,即select查询部分已修复,我们通过每次迭代中的参数筛选查询,例如select * from order where year> @variable。就我而言,每个查询都有不同的表模式,因此无法进行参数化。 – Asin

+0

检查我的编辑... – HGF

+0

我试过这个,但是它在forloop迭代中不工作。在我的情况下,每个查询返回不同的列,所以它在第二次迭代中失败(在datafowtask中),因为适当的列映射不会与oledb数据源列发生 – Asin