sql-server - 变量在 SSIS For Each Loop 中没有更新

标签 sql-server ssis sql-server-2012

我正在尝试创建一个简单的项目,我想在其中从给定的网站下载 XML 文件。我已将文件名存储在数据库表中。我在看本教程时做了什么:Implementing Foreach Looping Logic in SSIS是:

一个。从我的表中读取所有不同的行(我们称之为 XMLTable)
b.将此查询的结果分配给名为的用户变量:nameOfFileToDownload
C。为每个循环容器创建
d.配置为在本地为每一行分配要下载的文件名:nameFileForeachLoop 变量
e.使用来自 nameFileForeachLoop 变量的动态文件名的 HTTPManager 从连接链接下载文件作为路径。
F。为虚拟文件创建了 XMLFlatFile 连接 - 我在阅读上述教程后假设。

现在的问题是这个循环容器可以工作但不会单独下载文件 - 仍然是一个最后是空的文件。我的 nameFileForeachLoop 变量在每次 LOOP 迭代期间都没有更新。更重要的是,我注意到在创建 FLAT FILE 期间我只有 CSV 和 TXT 扩展名可用。我尝试了很多方法但没有结果。你能帮我如何下载 XML 文件吗? 例如,我有以下指向 XML 的链接:nbp.pl/kursy/xml/c001z180102.xml 此处更改的是此链接的最后一部分,其中包含我从 XMLTable 获得的 XML 扩展。

我的组件配置如下:

photo1 photo2 photo3 photo4 photo5 photo6 photo7 photo8 photo9

最佳答案

您走在正确的轨道上,但需要一些修正。

  1. 不要创建和配置平面文件目标 连接管理器,除非您在.CSV.TXT 文件中创建表格。在提供的示例中,作者使用动态查询选择数据并将结果存储在动态 txt 文件中。据我了解,这不是你的情况。
  2. 下面是一些如何在 SSIS 中使用 HTTP 下载和保存文件的示例。 Sample download scriptReview of different approaches to HTTP download .

关于sql-server - 变量在 SSIS For Each Loop 中没有更新,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50164717/

相关文章:

sql-server - 如果满足条件,则 SQL Server 离开连接

sql - 我们如何跟踪 SQL Server 中的存储过程更改,就像 TFS 中的版本控制一样

sql - 如何使用模式绑定(bind)创建存储过程?

c# - 如何在将 Excel 导入 SQL Server 时插入日期

sql - 计算ssis中两个日期之间的时差

sql-server - SSIS "error code 0xC0202092"是什么意思? (DTS_E_PRIMEOUTPUFAILED)

sql-server - 你如何在 visual studio 中自动加载数据?

c# - 有没有办法将字典对的值传递给 C# 中的变量?

sql - 在 sql server 2012 中找不到管理下的维护计划文件夹

sql - 将 SQL 行转换为具有值和属性的 XML 标记