Используйте xml.modify для динамического создания файла XML

Я хочу динамически создать файл XML, используя xml.modify команда. У меня есть таблица со столбцом типа xml и я прочитал бы эту таблицу с помощью курсора и создал бы файл XML.

Я пытаюсь этот код просто сделать несколько тестов, но он не работает.

declare @root xml
declare @x xml

set @root = '<Shipment></Shipment>'
set @x = '<ShipmentHeader><ShipID>0001</ShipID></ShipmentHeader>'

select @x

set @root.modify('insert {sql:variable("@x")} into (/Shipment)')

select @root

я бы

<Shipment>
    <ShipmentHeader>
        <ShipID>0001</ShipID>
    </ShipmentHeader>
</Shipment>     

1 ответ

Я исправил сам после того, как немного изменил код рабочий код ниже

declare @x xml

set @root = '<Shipment></Shipment>'

set @x = '<ShipmentHeader><ShipID>0001</ShipID></ShipmentHeader>'

select @x

set @root.modify('insert (sql:variable("@x")) into (/Shipment)[1]')

select @root

я удалил {} и указал первый узел для отгрузки [1] таким образом, я получил ожидаемый результат

Другие вопросы по тегам