【发布时间】:2020-03-21 05:39:13
【问题描述】:
我正在努力解析我拥有的 XML 响应。我需要标题值是列,记录值是它们各自行内的数据。以下是带有标题值和 1 条记录的返回示例。
如果记录显示 xsi:nil="true" 将为 NULL
<env:Envelope xmlns:env="http://schemas.xmlsoap.org/soap/envelope/">
<env:Header/>
<env:Body>
<ns2:getReportResultResponse xmlns:ns2="http://service.apiendpoint.com">
<return>
<header>
<values>
<data>CUSTOMER NAME</data>
<data>DISPOSITION GROUP A</data>
<data>DISPOSITION GROUP B</data>
<data>DISPOSITION GROUP C</data>
<data>DISPOSITION PATH</data>
<data>FIRST DISPOSITION</data>
<data>LAST DISPOSITION</data>
<data>LIST NAME</data>
</values>
</header>
<records>
<values>
<data>Mark Smith</data>
<data>12</data>
<data>19</data>
<data>23</data>
<data xsi:nil="true" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"/>
<data xsi:nil="true" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"/>
<data xsi:nil="true" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"/>
<data>Tier 1</data>
</values>
</records>
</return>
</ns2:getReportResultResponse>
</env:Body>
</env:Envelope>
【问题讨论】:
-
您的 xml 不包含列的数据类型信息。是否有任何其他来源可以推断数据类型?
-
这正是 API 向我提供响应的方式。我将使用插入的数据类型设置目标表,但我知道数据类型的唯一方法是通过我通过 API 运行的报告。这个响应是报告结果,因为它们来了
-
那么,将xml转换为sql表的目的是什么?有计划查询
SELECT SUM([DISPOSITION GROUP A] .. GROUP BY [CUSTOMER NAME]的表吗?
标签: sql sql-server xml