在向大家详细介绍Oracle之前,首先让大家了解下Oracle xmltype是什么,Oracle从9i开始支持一种新的数据类型—- xmltype,用于存储和管理xml数据,并提供了很多的functions,用来直接读取xml文档和管理节点。下面将介绍Oracle xmltype的一些基本使用。
1.建立含有Oracle xmltype数据类型的表create table abc (id number,xmldoc sys.xmltype);声明xmltype型字段用:sys.xmltype。
2.向带有xmltype类型的表插入带有数据insert into abc (id,xmldoc) value (abc.nextval , sys.xmlType.createXML(”<name><a id=”1″ value=”some values”>abc</a></name>”) );插入用 sys.xmlType.createXML(”some xml doc”)
3.直接查询Oracle xmltype字段里面的内容得到id=1的value变脸的值select i.xmldoc.extract(”//name/a[@id=1]/@value”).getStringVal() as ennames, id from abc i得到a节点的值select id, i.xmldoc.extract(”//name/a/text()”).getStringVal() as truename from abc i得到节点id属性的值Select hd.Data_t.extract(”/root/name/@id”).getStringVal() As Name FROM sehr_house_data hd
4.更新Oracle xmltype里面的数据update abc set xmldoc=updateXML(xmldoc,”//name/a[@id=1]/@value”,”some new value”) where ……(注意:如果里面没有<a id=”1″>这个节点,将不能update)
5.添加超过4k字节的xml文档到xmltype型字段可以通过使用临时表的办法实现:
◆先建立一个临时的表,其中的一个字段是clob类型;
◆再将要写入xmltype字段的xml doc写入这个临时的clob型的字段中;
◆最后insert into abc (id,xmldoc) values (abc_q.nextval , sys.xmlType.createXML((select content from 临时表 where id=……)));
【编辑推荐】
- Oracle监听器,让你监听想要的东东
- 你是否懂得Oracle.Net协议栈
- 概论Oracle数据库优化器
- 简明扼要介绍Oracle Provider
- 详谈捕获Oracle SQL语句执行计划
文章来源网络,作者:运维,如若转载,请注明出处:https://shuyeidc.com/wp/285166.html<

