oracle 工作笔记,不定期更新

  此博客为工作时,所见技术问题的解决方案笔记,欢迎大家转载,转载请注明出处,谢谢~

  

  更新时间: 2017-07-12

  1. clob字段值读取时,借用extractvalueextract函数读取节点时,oracle报数据类型不一致异常
  

  解决思路: 数据类型问题,猜测1.可能是获取的节点值与所需值类型发生冲突,查看sql,发现实际上并无关联,如果能查询出节点值,必然为字符串类型,不存在冲突,猜测2.可能是空值问题,extractvalue函数不存在空值报错问题,猜测3: 可能clob类型不支持extractvalue函数,因为oracle还有另一个字段同样也是存xml字符串的---SYS.XMLTYPE类型

  解决方案: 如果xml字段为clob类型,则将xml字段转成SYS.XMLTYPE类型,即xmltype(xml),如果是SYS.XMLTYPE类型直接用该函数即可

  更新时间: 2017-10-23

  2. 解决extractvalue和extract函数获取相同节点名称值,报错失败问题

  Xmlsequence函数可以将extract函数查找到的同名节点集合生成多行记录,借助table函数生成虚拟表,getstringval函数将节点转化成string字符串

 

 

posted @ 2017-07-12 09:02  追逐繁星  阅读(333)  评论(0编辑  收藏  举报