1
我需要在以下格式如何檢索XML包含CDATA,從數據庫
<mv>
<v>!CDATA[[some_inner_xml_1]]</v>
<v>!CDATA[[some_inner_xml_2]]</v>
</mv>
我剛剛獲悉,在<v />
數據會出現一些其他的XML檢索XML。當我以爲數據將是一個整數,我寫了這一點,它的工作
select IdentifierText as 'v' from ipmruntime.RecordsToExport where BatchID = 5 for xml path(''), Root('mv')
我試圖用語法'v!cdata'
- 它不喜歡它。我不知道在哪裏可以在它
我嘗試另一種語法
SELECT
1 AS Tag,
null AS Parent,
IdentifierText as 'mv!1!v!cdata'
FROM ipmruntime.RecordsToExport
where BatchID = 5
FOR XML EXPLICIT, root('mv')
這導致幾乎什麼,我需要
<mv><mv><v><![CDATA[47f81be4-b54f-4703-840b-62b306c40842]]></v></mv><mv><v><![CDATA[3ba36a1f-bf75-4ed9-911e-26f10fba5587]]></v></mv></mv>
或者,如果我在同一個查詢中使用'v!1'
堅持CDATA
,它會給我<mv><v></v><v></v></mv>
但哪裏比CDATA?
但是這有每個<v>
包裝成<mv>
。很顯然,我不是偉大的XML/SqlServer的組合...
謝謝。我研究了'!! cdata'語法。它把CDATA放入'''''' '。它是否正確? –
我只是跑這個測試 - 'SELECT MultiVal = TypeNode.value('(。)[1]','varchar(max)') FROM @ XML.nodes('/ mv/v')AS XTbl TypeNode)' - 它似乎與'<>'一起工作。請確認 –
@ T.S。語法是:''TAGNAME!TAGID!ATTRIBUTENAME [!..]''在這種情況下,我們沒有爲''標籤賦予任何屬性,這就是爲什麼我們有'TAGNAME!TAGID![!CDATA]'(方括號表示可選屬性,應該在實際查詢中刪除) –
har07