Базы данных Oracle - статьи

         

Хранение XML-документов


Для облегчения "чистого" (native) хранения и доступа к XML-документам был введен новый тип данных, называемый XMLType. Пользователи могут создавать экземпляры и столбцы этого типа данных и использовать методы типа для извлечения, обхода и трансформации XML-документов.

В столбце типа XMLType можно хранить документы либо в целостном виде (как данные типа CLOB), либо в декомпозированном объектно-реляционном виде. Этот тип позволяет выполнять операции запросов XML-документов: extract() – обход документа и извлечение его фрагмента на основе выражения пути и existsNode() – проверка существования узла, удовлетворяющего заданному условию. Пользователь может также определить текстовый индекс Oracle interMedia по этому столбцу и запрашивать этот XML-документ с применением операции Contains и других операций для работы с текстом.

-- выбрать имя заказчика (custname) из всех сообщений, которые -- являются срочными(urgent) и имеют в PO заказчика (customer) SELECT extract(e.msgVal, "/po/cust/custname") FROM message_tab e WHERE CONTAINS(e.msgVal, "URGENT") > 0 AND existsNode(e.msgVal,"//po/cust") > 0;



Содержание раздела