我有两个XML文件,一个文件包含2个元素,另一个文件包含4个元素。这两个文件之间是其中之一。我想提取两个XML文件的内容,使用公共元素进行联接(例如两个SQL Server表之间的内部联接),然后将两个文件中列的输出转储到一个输出文件中。以下是file1.xml的内容。
<?xml version="1.0" standalone="yes"?>
<DataPairs>
<DataPair>
<LicenseNumber>12345</LicenseNumber>
<DataValue>12331234</DataValue>
</DataPair>
<DataPair>
<LicenseNumber>43432</LicenseNumber>
<DataValue>435432134</DataValue>
</DataPair>
</DataPairs>
下面是file2.xml的内容
<LastRecords>
<DataRecord><AgentNum>013512</AgentNum><EmpId>124532523</EmpId><LicenseKey>12345</LicenseKey></DataRecord>
<DataRecord><AgentNum>013512</AgentNum><EmpId>124532523</EmpId><LicenseKey>12345</LicenseKey></DataRecord>
</LastRecords>
我想在上述文件之间进行联接(例如INNER JOIN)。只要file1中的LicenseNumber与file2.xml中的LicenseKey相匹配,我都希望将以下值输出到SQL Server表中。
LicenseKey
AgentId
EmplId
DataValue
我已尝试通过创建SSIS包在Visual Studio 2017中使用联接,联接合并,查找等,但是我看不到任何可以帮助我合并两个xml文件以获得所需结果的组件。
我正在寻找一个SSIS组件来基于一个公共元素合并两个XML文件,但是我似乎找不到一个。我做了谷歌搜索,也看了几段youtube视频,但无济于事。
有人可以帮忙吗?
答案 0 :(得分:2)
不幸的是,在Integration Services中找不到官方的XML目标组件。有一些第三方组件,或者您可以使用一种变通办法来写入XML文件。
要合并两个Xml文件,您必须执行以下步骤:
要将数据存储在XML文件中,您可以点击以下链接之一:
或者您可以使用第三方组件: