【发布时间】:2015-11-19 00:31:03
【问题描述】:
我用谷歌搜索了很多,但没有运气。 我无法使用 sp_OAGetProperty 从来自 Web 服务的 XML 列中检索数据。
XML 列包含..
<ArrayOfCustomerInfo xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://tempuri.org/">
<Customer CustCode="001">
<CustName>John</CustName>
<Queues>
<Q>
<No>10</No>
<Line>1</Line>
</Q>
</Queues>
</Customer>
</ArrayOfCustomerInfo>
当我执行以下语句时,我得到了 NULL
(但如果我删除所有 XML 命名空间 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3. org/2001/XMLSchema" xmlns="http://tempuri.org/")
SELECT a.b.value('@CustCode','varchar(4)') AS Code
,a.b.value('CustName[1]','varchar(20)') AS Name
,c.d.value('No[1]','int') AS QNo
,c.d.value('(Line)[1]','int') AS QLine
FROM PGHRMS_Employees x
CROSS APPLY x.data.nodes('/ArrayOfCustomerInfo/Customer') AS a(b)
CROSS APPLY a.b.nodes('Queues/Q') AS c(d)
请给我一些建议。我必须用 SQL SERVER 来实现 :(
如果有人想复制它,我将脚本粘贴到:http://pastebin.com/ueZGidyL
提前谢谢你!!!
【问题讨论】:
标签: sql-server xml web-services