ibatis调用oracle的动态sqlOracle认证考试

文章作者 100test 发表时间 2009:10:30 17:47:42
来源 100Test.Com百考试题网


"libai">

  1环境:oracle10g,ibatis2.3.

  2由于项目里面要调用oracle的存储过程,原本采用如下方法调用:

  {call ?=Tlgadmin.check(?,?)}

  但实际上是会报异常:提示oracle的动态sql语句太长。后来由数据库小组得知:动态sql的大小是有限制的。大小不能超过32K。

  既然oracle自己不能执行那么长的sql,实际的调用办法:用jdbc 来调用:应为代码是存在数据里的,所以首先先把它取出来,然后用jdbc 来调用。

  A取出类型为CLOB的sql,配置文件这么写的:

  <.resultMap id=“recycle_codeList”

  class=“com.hzmc.capaa.domain.persistence.cap.RecycleCode”>.

  <.result property=“id” column=“id” />.

  <.result property=“owner” column=“owner” />.

  <.result property=“name” column=“name” />.

  <.result property=“otype” column=“otype” />.

  <.result property=“status” column=“status” />.

  <.result property=“code” column=“code”

  typeHandler=“org.springframework.orm.ibatis.support.ClobStringTypeHandler” />.

  <.result property=“opseq” column=“opseq” />.

  <.result property=“optype” column=“optype” />.

  <.result property=“opTime” column=“optime” />.

  <.result property=“dbId” column=“dbid” />.

  <./resultMap>.

  <.0select id=“RecycleCode_showClobDetailById”

  resultMap=“recycle_codeList” parameterMap=“recycleCodeMap”>.

  0select id,owner,name,otype,status,code,opseq,optype,optime,dbid from

  mc$$asset_recycle_code where id=? and dbid=?

  <./0select>.


相关文章


监控Oracle系统中锁的常用脚本Oracle认证考试
Oracle认证辅导:OracleCache表Oracle认证考试
ORACLE索引聚簇表的数据加载Oracle认证考试
Oracle认证辅导:Oracle数据库体系架构概要Oracle认证考试
ibatis调用oracle的动态sqlOracle认证考试
深入浅出Oracle11g分区功能Oracle认证考试
Oracle大量数据插入之性能优化理解Oracle认证考试
oracle插入回车换行符Oracle认证考试
oracleimp_exp命令使用Oracle认证考试
澳大利亚华人论坛
考好网
日本华人论坛
华人移民留学论坛
英国华人论坛