Преобразование значения в XML-формат
Функция
Преобразование значения в XML-формат.
Спецификация
::=
Возвращаемое значение
-
Значение
<элемента>
в XML-формате, т.е. в обрамлении тега, имя которого совпадает, по возможности, с<идентификатором столбца>
. -
Тип возвращаемого значения – VARCHAR(n), где n – сумма длин тегов и максимальных длин текстовых преобразований полей.
select xml(make, model, year) from auto; |<MAKE>FORD</MAKE> |<MODEL>MERCURY COMET GT V8</MODEL>|<YEAR>71</YEAR>| |<MAKE>ALPINE</MAKE> |<MODEL>A-310</MODEL> |<YEAR>70</YEAR>| |<MAKE>AMERICAN MOTORS</MAKE>|<MODEL>MATADOR STATION</MODEL> |<YEAR>71</YEAR>| …
-
Если аргументы функции содержит литералы, выражения, повторяющиеся имена столбцов либо столбцы с не алфавитно-цифровыми именами, то вместо проблемных имен выводятся имена в формате «COLUMN_NUMBER_nnn».
select xml(sysdate, to_char(34.7,'99.9')); |<COLUMN_NUMBER_1>20.06.2005:10:57:54:00</COLUMN_NUMBER_1>|<COLUMN_NUMBER_2>34.7</COLUMN_NUMBER_2>|
-
Если аргумент функции имеет NULL-значение, то для него возвращаемое значение не формируется.
select xml(make, null, make) from auto fetch first 1; |<MAKE>FORD</MAKE>|<COLUMN_NUMBER_3>FORD</COLUMN_NUMBER_3>|
-
<Элемент>
может быть задан<SQL-параметром>
, который должен содержать спецификацию типа данных параметра.select xml(? (char(20)), ?(char(20)))from auto limit 1; make year |<COLUMN_NUMBER_1>make</COLUMN_NUMBER_1> <COLUMN_NUMBER_2>year</COLUMN_NUMBER_2>|