Jump to content

SQL/XML

Спецификации SQL/XML или XML-связанные спецификации — это часть 14 спецификации языка структурированных запросов (SQL). В дополнение к традиционным предопределенным типам данных SQL, таким как NUMERIC, CHAR, TIMESTAMP, ... он представляет предопределенный тип данных XML вместе с конструкторами, несколькими подпрограммами, функциями и сопоставлениями типов данных XML-SQL для поддержки манипуляций и хранения XML в базе данных SQL .

Спецификация [ править ]

Спецификация определяет тип данных XML, функции для работы с XML, включая конструирование элементов, сопоставление данных из реляционных таблиц, объединение фрагментов XML и встраивание XQuery выражений в операторы SQL . К функциям, которые можно встроить, относятся XMLQUERY (который извлекает XML или значения из поля XML) и XMLEXISTS (который определяет, соответствует ли выражение XQuery).

Дополнительная информация и примеры функций SQL/XML представлены по внешним ссылкам ниже. [2] [3] [4] .

Соответствие стандартам [ править ]

Результат объективной оценки Wagner соответствия стандарту SQL/XML :2006 Oracle 11g Release 1, MS SQL Server 2008 и MySQL 5.1.30 показан в следующей таблице. [2] , куда передаются данные для PostgreSQL 9.1, [5] [6] и добавлен IBM DB2:

Oracle 11g, выпуск 1 IBM DB2 9.7 MS SQL-сервер 2008 MySQL 5.1.30 PostgreSQL 9.1
Тип данных XML Частичный (Oracle присваивает типу данных «XMLType» вместо «XML») Высокий Высокий Нет Частичный
Предикаты SQL/XML Высокий Высокий Частичный Нет Частичный
SQL/XML-функции Высокий Высокий Частичный Низкий Высокий
XQuery Расширение Да Да Да Нет Нет

Примеры [ править ]

В приведенном ниже примере запроса SQLXML в качестве выходных данных используется тип SQLXML (проверено на DB2 9.7 и Oracle 11g):

SELECT XMLELEMENT(NAMEs "PhoneBook", -- root element name
                  XMLAGG(           -- aggregation over the rows	
                  XMLELEMENT(NAME "Contact",                                                  
                  XMLATTRIBUTES(cust.FIRST_NAME AS "Name",
                                cust.TEL)
                              )
                        )
                  )
FROM TMP.CUSTOMER AS cust;

И вывод:

<PhoneBook>
    <Contact Name="Daniel" TEL="788255855"/>
    <Contact Name="Martin" TEL="889665447"/>
    <Contact Name="Eva"    TEL="111222333"/>
    <Contact Name="Alena"  TEL="444555666"/>
    <Contact Name="Oliver" TEL="777888999"/>
    <Contact Name="George" TEL="444882446"/>
    <Contact Name="Jamie"  TEL="123456789"/>
</PhoneBook>

Образцы взяты из статьи Javalobby. [7] .

Ссылки [ править ]

  1. ^ Фундерберк, Дж. Э.; Малайка, С.; Рейнвальд, Б. (2002), «XML-программирование с использованием SQL/XML и XQuery» (PDF) , IBM Systems Journal , 41 (4): 642–665, doi : 10.1147/sj.414.0642 , получено 14 ноября 2011 г.
  2. Перейти обратно: Перейти обратно: а б Вагнер, Михаэль (2010), «1-е издание», SQL/XML:2006 — Оценка соответствия стандартам выбранных систем баз данных , Diplomica Verlag, ISBN  978-3-8366-9609-8
  3. ^ Айзенберг, Эндрю; Мелтон, Джим (2004), «Достижения в SQL/XML» (PDF) , SIGMOD Record , 33 (3): 79, doi : 10.1145/1031570.1031588 , получено 14 ноября 2011 г.
  4. ^ Айзенберг, Эндрю; Мелтон, Джим (2002), «SQL/XML добивается хороших результатов» (PDF) , SIGMOD Record , 31 (2): 101, CiteSeerX   10.1.1.109.4867 , doi : 10.1145/565117.565141 , получено 14 ноября 2011 г.
  5. ^ Соответствие PostgreSQL стандарту ISO 9075-14 (SQL/XML) в документации PostgreSQL 9.1.
  6. ^ XML-функции PostgreSQL 9.1 в документации PostgreSQL 9.1.
  7. ^ Кек, Дэниел (2013), SQLX — от БД прямо к XML и обратно , Javalobby.org

Внешние ссылки [ править ]


Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: 5409e7901ab352021edd447289d374af__1679999280
URL1:https://arc.ask3.ru/arc/aa/54/af/5409e7901ab352021edd447289d374af.html
Заголовок, (Title) документа по адресу, URL1:
SQL/XML - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)