| Цитата(VIAcom @ 4.8.2005, 15:05) | еще у меня нет dbmx_xmldom.CreateDocument('....',null,null); а есть только domxml.NewDocument; |
Какая версия Oracle?
| Цитата(VIAcom @ 4.8.2005, 15:05) | | значения ноды я установить все равно не могу |
Это делается так:
| Код | declare doc dbms_xmldom.DOMDocument; root_element dbms_xmldom.DOMElement; root_node dbms_xmldom.DOMNode; node dbms_xmldom.DOMNode; data_node dbms_xmldom.DOMText; c Clob; begin doc := dbms_xmldom.createDocument('http://www.w3.org/2001/XMLSchema', null, null); dbms_xmldom.setVersion(doc, '1.0'); root_element := dbms_xmldom.createElement(doc, 'RootNode'); root_node := dbms_xmldom.makeNode(root_element); node := dbms_xmldom.makeNode(doc); node := dbms_xmldom.appendChild(node, root_node); data_node := dbms_xmldom.createTextNode(doc, 'XML - Extensible Markup Language'); node := dbms_xmldom.makeNode(data_node); node := dbms_xmldom.appendChild(root_node, node);
dbms_lob.createtemporary(c, true, dbms_lob.session); dbms_xmldom.writeToClob(doc, c); insert into clob_tbl (data) values (c); end;
|
в результате получим
| Код | <?xml version="1.0"?> <RootNode>XML - Extensible Markup Language</RootNode>
|
| Цитата(VIAcom @ 4.8.2005, 15:05) | | что то я совершенно не просек, какая разница м/у Document/Element/Node если они все так легко друг в друга конвертятся? |
Document, Element, TextNode и т.д. унаследованны от Node, поэтому они и конвертятся в него, просто для типов PL/SQL нет наследования вот и приходится конвертировать явно. Это все описывается в http://www.w3.org/TR/REC-DOM-Level-1/level-one-core.html.
| Цитата(VIAcom @ 4.8.2005, 15:05) | | Очень мало примеров с записью и созданием XML, быду признателен за любые ссылки по этой теме. |
К сожалению не встречал. |