如何处理XML文件并使用SSIS软件包更新表



我有两个XML文件accepted.XMLrejected.XML具有相似的结构。这些文件的节点之一是 client_claim_num

如果CLIENT_CLAIM_NUM来自Accessed.xml,我需要更新具有相应状态的SQL Server表。拒绝的xml也是如此。我接受的.xml具有以下结构:

Accessed.xml文件布局:

 <CLAIM> 
      <CLIENT_CLAIM_NUM>1</CLIENT_CLAIM_NUM> 
      <Vendor_ASSIGNED_CLAIM_NUM>434772</Vendor_ASSIGNED_CLAIM_NUM> 
      <LASTNAME>#########</LASTNAME> 
      <Date>2012-01-06T00:00:00</Date>
 </CLAIM>

还如何通过邮件发送每个文件中的索赔号计数?

我使用数据流任务和XML源来解析XML。它给出节点作为列,但是如何将其存储在变量或使用这些列的表中。我无法使用登台表,因为我想要一个包装中的所有内容

要更新表,将输出数据流路径连接到OLE DB命令转换。构建一个参数化更新语句,例如

更新mytable SEP siper_num =?

然后在"列映射"选项卡上映射您的列(在OLE DB命令转换)。您可以添加其他参数并根据需要将其映射到其他列。

要将值存储在变量中,首先将变量定义为数据类型=对象。然后将输出数据流道路径连接到记录集目标,并指定该变量。请注意,这实际上是所有行和列的表。

要获取一个特定的单元格,接下来在控制流中添加一个foreach循环容器(从现有的数据流任务下游)。将枚举者设置为foreach ado枚举者。将您的变量指定为ADO对象源变量。然后在"变量映射"选项卡上定义输出中每列的新变量。现在,foreach循环容器中的任何任务都将在循环的每个迭代中从每行分配的那些变量。

最新更新