Я создаю XML-документ, используя FOR XML EXPLICIT
:
declare @MyTable table (value xml);
insert into @MyTable values
('<foo bar="data1">content1</foo>')
,('<foo bar="data2">content2</foo>')
,('<foo bar="data3">content3</foo>');
select 1 as Tag, null as Parent
, value as [x!1!!xml]
from @MyTable
for xml explicit;
И получить такой ответ:
<x>
<foo bar="data1" xmlns="">content1</foo>
</x>
<x>
<foo bar="data2" xmlns="">content2</foo>
</x>
<x>
<foo bar="data3" xmlns="">content3</foo>
</x>
Проблема в том, что мне не нужен атрибут xmlns
.
Я нашел решение, но оно кажется кладжом.
select 1 as Tag, null as Parent
, cast (value as varchar(200)) as [x!1!!xml]
from @MyTable
for xml explicit;
Есть ли более элегантный способ решить проблему?
Не предлагать использовать FOR XML PATH/RAW/AUTO
.
Режим EXPLICIT
обязателен.