mybatis保存CLOB类型到oracle数据库

在oracle中使用varchar2类型存储字符串时,发现存储的最大长度就是4000字符,再长就会报错。

使用clob类型,可以存储4g内容,而且mybatis可以自动解析clob类型,只需在写insert和update语句是,将

clob字段的数据类型设为:jdbcType=CLOB。至于javabean中,clob字段可以用String类型进行接收。

但是clob字段是不能用在常规的where条件中,例如=号,like等,如果需要进行模糊查询,可以使用下面语句

select * from t where dbms_lob.instr(t.clob字段名,模糊查询的内容,1,1) > 0。

<update id="updateByPrimaryKey" parameterType="cn.wlw.mgt.entity.WmsInPool">  
    update WMS_IN_POOL  
    set BIG_DATA = #{bigDdata,jdbcType=CLOB},  
      UPDATE_TIME = #{updateTime,jdbcType=TIMESTAMP}  
    where POOL_PK_NO = #{poolPkNo,jdbcType=DECIMAL}  
  </update>

使用连接符(||)向oracle中类型为CLOB的列追加内容时,传入长字符串会报错,目前没有找到好的解决方法,如果使用追加功能可以将传入的字符串长度改小,1000个字符可以拼接。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值