XMLSERIALIZE

При помощи условия XMLSERIALIZE можно включить преобразование данных XML в последовательную форму для столбцов XML соответствующего оператора SQL.

Условие XMLSERIALIZE может использоваться на уровне блока SELECT, при помощи спецификации применительно к отдельному оператору SQL и его столбцам XML. На этом уровне есть возможность более подробных спецификаций по сравнению с условием XMLSERIALIZE на уровне блока UNLOAD и более подробных правил преобразования данных в последовательную форму для каждого столбца таблицы.

Если условие XMLSERIALIZE задается применительно к оператору SQL, оно должно начинаться со спецификации преобразования XML в последовательную форму по умолчанию, а далее может следовать список спецификаций с явным указанием столбцов XML. Преобразование XML в последовательную форму по умолчанию применяется ко всем столбцам XML, кроме указанных явных образом в последующем списке.

Для преобразования в последовательную форму столбца XML требуется тип данных результата с достаточным размером для значений XML этого столбца в последовательной форме.

При явном указании столбца для преобразования в последовательную форму требуется столбец с типом данных XML.

При обработке столбцов с типом данных XML все столбцы должны обрабатываться одинаково. Либо все они выгружаются в отдельные файлы, либо все они преобразуются в последовательную форму. Если хотя бы для одного из столбцов XML в таблице указано преобразование в последовательную форму, то при вызове для него скалярной функции XMLSERIALIZE() остальные столбцы с типом данных XML также должны подвергаться преобразованию данных XML в последовательную форму.

Синтаксис
XMLSERIALIZE ( спецификация_сериализации_xml [ , имя_столбца AS спецификация_сериализации_xml ] )
Переменная
спецификация_сериализации_xml Спецификация преобразования данных XML в последовательную форму.
имя_столбца Имя столбца XML, к которому применяется преобразование данных в последовательную форму.
По умолчанию
Нет.
Пример
XMLSERIALIZE(VARCHAR(310), DESCRIPTION AS VARCHAR(270))