Oracle数据库对xml类型字段操作的详解

对Oracle数据库操作xml数据的简单介绍:

项目中真实操作,由于需要将客户的录入信息暂存在流程表的一个字段中以xml形式,而在不借助中间表的条件。

首先我们可以先把后台获取到的实例对象转成xml类型:

//XStream与DOMDriver都是来自xstream-版本号.jar包下的
XStream stream = new XStream(new DomDriver()); 
//然后将实例对象转成xml格式
String xml = stream.toXML(实例对象名);

比如我们获取到的xml为下面这个值,并将xml存放在Person表的operation(字段类型为CLOB)字段中:

 
  henry  
  23  
  male  
 R
  [email protected]  
 

当我们需要拿出xml中的某个值来比对或者查询的时候,可以如下操作:

--1、获取xml中某个标签的值可以这样写,用XMLTYPE类型对XML解析:
 SELECT 
 EXTRACT(xmltype(a.operation),'/student/currEncyNo/text()').getStringVal() as currencyNo
 FROM Person  a

由于本地库自己设了三条数据,看结果图:

Oracle数据库对xml类型字段操作的详解_第1张图片

在这里只是给大家简单介绍一下读取xml类型字段的标签下的某个值,如果大家想了解更多操作xml数据的高级方法,可以参考Oracle的官方文档,给的很详细:

https://docs.oracle.com/cd/B19306_01/appdev.102/b14259/xdb04cre.htm#sthref465

 

你可能感兴趣的:(数据库)