This function appends a user supplied
XML tag onto the target XML document or an XML element in
the path provided as the XPath expression.
The prototype for defining an
AppendChildXML function is shown below,
AppendChildXML(<XML_Document> | <XML_Element>,
<XPath_Expression>, <Child_XML>)
The cost tag is added to the XML
document for the book ID
1001 using the
AppendChildXML function as shown below,
UPDATE book_store
SET book_details_xml=
appendchildxml(book_details_xml, '/Rack1',
'<Cost>10$</Cost>') WHERE book_id=1001;
1 rows updated.
The addition of this child XML tag to
the parent XML document can be verified by using the
EXTRACTVALUE function as shown below,
select extractvalue(book_details_xml,'/Rack1/Cost')
from book_store;
Result:
10$
When a duplicate child node is
inserted into a single parent as shown below,
UPDATE book_store
SET book_details_xml=appendchildxml(book_details_xml,'/Rack1','<Cost>9$
for membership holders</Cost>')
WHERE book_id
=1001;
1 rows updated.
The values of the duplicate child
nodes can be retrieved by using the square brackets with the
appropriate indicator on the child node name as shown below,
select
extractvalue(book_details_xml,'/Rack1/Cost[1]')
from book_store;
Result:
10$
select extractvalue(book_details_xml,'/Rack1/Cost[2]')
from book_store;
Result:
9$ for membership holders
APPENDCHILDXML
appends XML content to a node. It works similar to
INSERTCHILDXML; additionally, it can add different node
types:
SELECT
APPENDCHILDXML
(
OBJECT_VALUE,
'/COUNTRY',
XMLFOREST(7.5E6 AS POPULATION, '[+]' AS FLAG)
) APPENDCHILDXML
FROM
WORLD;
APPENDCHILDXML
---------------------------------------------------
<
COUNTRY ID="CH">
<NAME>Switzerland</NAME>
<CANTON_LIST>
...
</CANTON_LIST>
<POPULATION>7500000</POPULATION>
<FLAG>[+]</FLAG>
< /COUNTRY>
|
|
|
Oracle Training from Don Burleson
The best on site
"Oracle
training classes" are just a phone call away! You can get personalized Oracle training by Donald Burleson, right at your shop!
|
|
|
|
|
Burleson is the American Team
Note:
This Oracle
documentation was created as a support and Oracle training reference for use by our
DBA performance tuning consulting professionals.
Feel free to ask questions on our
Oracle forum.
Verify
experience!
Anyone
considering using the services of an Oracle support expert should
independently investigate their credentials and experience, and not rely on
advertisements and self-proclaimed expertise. All legitimate Oracle experts
publish
their Oracle
qualifications.
Errata?
Oracle technology is changing and we
strive to update our BC Oracle support information. If you find an error
or have a suggestion for improving our content, we would appreciate your
feedback. Just
e-mail:
and include the URL for the page.
Copyright © 1996 - 2020
All rights reserved by
Burleson
Oracle ®
is the registered trademark of Oracle Corporation.
|
|