Галерея
7757 8119 8300 8698 8817 9504 9722 9937
Интересные записи
Топовые новости
Новое

Хранение содержимого XML

Хранение содержимого XMLХранение содержимого XML, т. е. текстовых данных, в таких стандартных типах данных, как CHAR, VARCHAR и даже CLOB/BLOB, доказало свою неэффективность, так как для выполнения поиска или чтения и редактирования всего лишь одного узла требуется синтаксический разбор всего документа. Еще один подход предполагал дизассемблирование документов XML и связывание их со множеством реляционных таблиц. Он был более эффективен, однако тоже был связан с дополнительными затратами и не учитывал стремительно возрастающую сложность стандартов XML, которые теперь позволяют содержать в документах рекурсивные структуры и прочие конструкции, слабо сочетающиеся с реляционной моделью. К тому же разобранный на составляющие документ XML способен потерять целостность данных, при этом им становится тяжело манипулировать.

Все эти причины ясно отразили потребность в поддержке XML как производителями СУБД, так и комитетом стандартизации SQL. Новый стандарт SQL/XML обеспечил механизм внедрения XML в реляционную парадигму и ввел выражения XQuery в мир SQL. Производители СУБД также реализовали некоторые собственные, дополнительные механизмы наряду с полной (или частичной) поддержкой стандартного синтаксиса SQL/XML.

Связанные с XML спецификации были представлены в стандарте SQL в документе ISO/ IEC 9075-14:2003, за которым последовал документ ISO/IEC 9075-14:2006. В этих документах ISO были определены способы импорта и хранения данных XML в СУБД, манипулирования ими в базе, а также публикации традиционных данных SQL в форме XML. В этих документах были определены средства, позволяющие приложениям интегрировать в код SQL запросы XQuery, — язык запросов, разработанный комитетом World Wide Web Consortium (W3C) для одновременного доступа к обычным данным SQL и документам XML. В табл. 15.2 перечислены функции публикации SQL/XML. При реализации единого стандарта производители СУБД использовали разные подходы. Это привело к тому, что не существует единого подхода, гарантирующего переносимость запросов между разными СУБД.

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *