Mybatis Oracle 错误:ORA-22922 不存在的 LOB 值

在系统迁移过程中,遇到Oracle的WM_CONCAT函数与MyBatis不兼容的问题,导致ORA-22922错误。通过调整SQL语句结构,将to_char函数移到WM_CONCAT外,并在所有字段上使用to_char,成功解决了这一问题。

在做系统迁移的时候,重构数据层,sql里面有用到oracle 的wm_concat函数,在使用mybatis的时候报错,

ORA-22922: 不存在的 LOB 值

解决方法:

原来的sql片段,to_char在外面,wm_concat在里面

to_char(wm_concat(RTRIM(BEGIN_NO) || '-' || RTRIM(END_NO))) as nos

改成 wm_concat在外面,to_char在里面,同时在上面的select字段用to_char包一层。

wm_concat(to_char(RTRIM(BEGIN_NO) || '-' || RTRIM(END_NO))) as nos



, to_char(g.nos) nos

重启后,解决问题。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值