我正在使用以下代码 它没有归还我的结果。我在这里缺少什么?
declare @iDoc INT
EXEC sp_xml_preparedocument @iDoc OUTPUT, '<Ids><Id Val ="40041">11</Id><Id Val ="40042">22</Id></Ids>'
Select @iDoc
Select Val FROM OPENXML (@iDoc, '/Ids/Id',2) WITH (Val varchar(10))
答案 0 :(得分:1)
找到答案 - 将'/ Ids / Id',2替换为'/ Ids / Id',5
答案 1 :(得分:1)
我更喜欢在查询的WITH部分使用xpath。这样,您无需担心OPENXML函数的第3个参数。无论第3个参数如何,以下代码都有效(可以是任何值)。
declare @iDoc INT
EXEC sp_xml_preparedocument @iDoc OUTPUT, '<Ids><Id Val ="40041">11</Id><Id Val ="40042">22</Id></Ids>'
Select *
FROM OPENXML (@iDoc, '/Ids/Id',2)
WITH (Val varchar(10) '@Val',
Id int '.')
EXEC sp_xml_removedocument @iDoc