Как сохранить строку, которая уже является XML, в качестве атрибута корневого узла другого XML?
Строка, которую я хочу сохранить, - @inputXmlString
.Это значение:
<?xml version="1.0" encoding="utf-8"?>
<OneViewReviewRq
xmlns:xsi = "http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd = "http://www.w3.org/2001/XMLSchema">
<LOAN>ASFDK</LOAN>
</OneViewReviewRq>
Я должен сохранить это значение в качестве атрибута для другого узла, скажем row
, который является корневым узлом.Вот что нужно для вывода:
<root oneViewXml="<?xml version="1.0" encoding="utf-8"?>
<OneViewReviewRq
xmlns:xsi = "http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd = "http://www.w3.org/2001/XMLSchema">
<LOAN>ASFDK</LOAN>
</OneViewReviewRq>" />
Проблема в следующем: когда я использую for xml path
или for xml raw
, кавычки и <
, >
символы отображаются не так, как есть<
и >
и т. Д.
Это запрос, который я использую:
select @OutputXml=(select @inputXmlString as '@oneViewXml'
for xml path('root'))
Это вывод:
<root oneViewXml="<?xml version="1.0" encoding="utf-8"?>
<OneViewReviewRq
 xmlns:xsi = "http://www.w3.org/2001/XMLSchema-instance"
 xmlns:xsd = "http://www.w3.org/2001/XMLSchema">
<LOAN>ASFDK</LOAN>
</OneViewReviewRq>" />