Oracle中的xmltype使用简介

日期: 2009-11-18 作者:佚名 来源:TechTarget中国

  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(”abc”) );

  插入用 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 ……

  (注意:如果里面没有这个节点,将不能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=……)));

我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。

我原创,你原创,我们的内容世界才会更加精彩!

【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】

微信公众号

TechTarget微信公众号二维码

TechTarget

官方微博

TechTarget中国官方微博二维码

TechTarget中国

电子邮件地址不会被公开。 必填项已用*标注

敬请读者发表评论,本站保留删除与本文无关和不雅评论的权力。

作者

佚名
佚名

相关推荐