Краткое введение о том, как использовать тип данных oracle xml - PullRequest
5 голосов
/ 20 октября 2010

Как вы работаете с типом данных oracle XML?

Этот вопрос предназначен для ответа на мой вопрос и ответа на него *, просто чтобы поделиться информацией с другими

1 Ответ

9 голосов
/ 20 октября 2010

В следующем примере SQL демонстрируется, как вставлять, запрашивать и обновлять поля базы данных, содержащие тип данных XMLTYPE:

-- Create a table that can store XML
create table sample_xml (id number, xml xmltype);

-- Insert some XML into the table
insert into sample_xml values (1, xmltype.createxml('<subject><name>test</name><list><li>a</li><li>b</li></list></subject>'));
insert into sample_xml values (2, xmltype.createxml('<subject><name>test</name><list><li>a</li></list></subject>'));

-- When doing a select, refer to table using the alias or getClobVal() will not work
select t.id, t.xml.getClobVal() from sample_xml t;

-- Update text of a single xml element
UPDATE sample_xml SET xml = UPDATEXML(xml, '/subject/name/text()','happy') WHERE id = 2;

-- Select out just the name for each row in the table using xpath
select id, extractvalue(xml, '/subject/name/text()') from sample_xml;

-- Doing an sample_xml, where the xpath string matches two elements, the text of both elements will be updated
UPDATE sample_xml SET xml = UPDATEXML(xml, '/subject/list/li/text()','one');
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...