oracle的xmltype基本使用方法
来源:优易学  2009-11-20 19:53:58   【优易学:中国教育考试门户网】   资料下载   IT书店
全站文章页内部300*250广告位

  oracle从9i开始支持一种新的数据类型---- xmltype,用于存储和管理xml数据,并提供了很多的functions,用来直接读取xml文档和管理节点。下面将介绍xmltype的一些基本使用。

  1.建立含有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.直接查询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.更新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=......)));

责任编辑:小草

收藏此页】【 】【打印】【回到顶部
文章页底部500*200广告
文章搜索:
 相关文章
计算机底部580*90广告
文章页右侧第一330*280广告
计算机文章页资讯推荐
热点资讯
文章页330尺寸谷歌广告位
热门课程培训