SQL/XML

Материал из Википедии — свободной энциклопедии
Перейти к навигации Перейти к поиску

SQL/XML (XML-Related Specifications) — спецификации, связанные с XML) — расширение стандарта SQL, закрепленное в документе ISO/IEC 9075-14:2003 (SQL:2003). SQL/XML определяет расширения SQL для использования XML в сочетании с SQL. Вводятся типы данных XML наряду с несколькими подпрограммами, функциями, а также связывание XML-в-SQL типов данных для поддержки обработки и хранения XML в SQL-базах данных.

Спецификация SQL/XML включает в себя функции создания XML-данных. Эти функции позволяют пользователю создавать новые XML-элементы или атрибуты с определёнными значениями, например, из реляционных таблиц. Другие функции, например, XMLCONCAT или XMLAGG, могут быть использованы для объединения небольших XML-фрагментов в более крупные. Список доступных функций конструирования включает:

  • XMLELEMENT
  • XMLATTRIBUTES
  • XMLFOREST
  • XMLCONCAT
  • XMLNAMESPACES
  • XMLCOMMENT
  • XMLPI
  • XMLDOCUMENT
  • XMLAGG

и ряд других.

SQL/XML также определяет функции, позволяющие пользователю встраивать XQuery-выражения в SQL-запросы, в том числе XMLQUERY и XMLTABLE.

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

Дополнительные источники

[править | править код]