如何将 Azure 数据工厂中的 XML 文件正确映射到 SQL Server

How to correctly map an XML file in Azure Data Factory into SQL Server

提问人:Synik 提问时间:10/12/2023 最后编辑:Synik 更新时间:10/21/2023 访问量:106

问:

我目前设置了一个 Azure 数据工厂管道,它使用 SOAP API 从 Archer 拉取数据。此数据以 XML 形式提供,我正在尝试将其放入 SQL Server。

它目前是如何通过的,它似乎是将整个XML文件放入SQL中的单个单元格中:

enter image description here

如果我不得不猜测,我认为我在数据工厂中的映射有问题,但我不确定如何解决这个问题:

enter image description here

对此有什么想法吗?我是否需要在它遇到 SQL 或其他东西之前将其从 XML 中转换出来?将不胜感激这方面的一些方向。谢谢!

编辑:这是XML数据当前的样子。我试图清除任何可识别的东西:enter image description here

EDIT2:这是我启用高级编辑器时的样子,请注意,集合引用下拉列表为空。enter image description here

sql-server xml azure-data-factory

评论


答:

1赞 Bhavani 10/13/2023 #1

您可以使用复制活动的“映射”选项卡中的选项从 XML 文件中展开和提取数据。我尝试了示例数据,如下所示:Collection reference

enter image description here

在映射选项卡中,按照以下步骤操作:

  • 在映射选项卡中,选择“导入架构”
  • 打开高级编辑器
  • 提供需要从中迭代和提取数据的数组的 JSON 路径,如下所示:

enter image description here

调试管道后,XML 数据将复制到 SQL Server,如下所示:

enter image description here

评论

0赞 Synik 10/14/2023
谢谢你@Bhavani我认为这让我完成了 90% 的工作。我对数组的JSON路径有疑问。我使用的XML输出不包含$['text']['row']格式的任何内容。这是我应该手动转换的东西吗?我只想确保我的XML文件能够正确读取它。
0赞 Bhavani 10/14/2023
您能否提供您的示例XML数据?
0赞 Synik 10/16/2023
我在 OP 中添加了 XML 的编辑图片。似乎所有列标题都以“name=”开头
0赞 Synik 10/19/2023
关于如何格式化我的 XML 的任何建议?我在OP中提供了一个例子。
0赞 Bhavani 10/19/2023
您能否以文本形式提供您的 XML?