繁体   English   中英

从 SSIS 中 XML 源中的变量读取 Xml 文件

[英]To read Xml file from variable in XML Source in SSIS

我通过网络服务任务获得了变量的结果,如下图所示,

在此处输入图片说明

然后我使用 XML 任务删除多余的命名空间并将处理结果存储在 strProcessedResult 变量中的另一个变量中,如下图所示,

在此处输入图片说明

这里的第二个操作数是我的data.xslt文件,它有助于从我的 XML 文件中删除额外的命名空间,

下面是我的控制流的整个结构,

在此处输入图片说明

在数据流中,我使用 XML 源读取我的变量并将数据输入数据库,下面是 XML 源的屏幕截图,

在此处输入图片说明 ,

在这里,它给了我错误,因为 XML 源无法读取数据并且 XMLDataVariable 为空,我想读取节点值并使用 OLEDB 目标将数据插入数据库,

如果不是将 Web 服务任务的结果保存到变量中,而是将其保存在外部的 XML 文件中,那么下面将是我的 XML 文件格式,

<?xml version="1.0" encoding="utf-16"?>
 <Data xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
  <Name xmlns="http://localhost">Rahul</Name>
  <BirthDate xmlns="http://localhost">1991-04-20T00:00:00</BirthDate>
 </Data>.

应用 XSLT 规则删除多余的命名空间后,我的 XML 文件将如下所示,

<?xml version="1.0" encoding="utf-8"?><Data><Name>Rahul</Name><BirthDate>1991-04-20T00:00:00</BirthDate></Data>

请注意,我必须强制添加 XSLT 规则以删除额外的命名空间,否则它不会为进一步操作创建 XSD 并且我的项目运行良好如果我将结果存储在外部 XML 文件中但我想使用变量对于整个操作,

确保在设计时您的strProcessedResult变量中确实有一些内容。 我的意思是:当你运行你的包时,它会加载变量,但在设计时你的变量是空的,所以粘贴你期望的 XML,只是为了给任务一些处理。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM