“ORA-00932: 数据类型不一致: 应为 -, 但却获得 CLOB “一种情况的解决

问题:

在一个应用项目中,原来运行得好好得,但升级后,却报“ORA-00932: 数据类型不一致: 应为 -, 但却获得 CLOB ”。经查,一表增加了CLOB类型字段,用于存储用户照片数据。

解决:

原报错查询为2个表关联,经过简化,可以得出能导致同样报错的典型SQL句式,见下面第一条SQL:

#报错
select distinct u.* from t_user u,t_org where u.user_id='1';

#不报错
select distinct u.* from t_user u where u.user_id='1';

#不报错
select distinct u.user_id,u.user_baseorgid from t_user u,t_org where u.user_id='1';

经测试,发现带distinct关键字的语句,关联多表查询时,若使用字段全选(select *),则表中含clob字段,就会报上述错误。

解决的办法时,使用distict关键字时,select 子句中不要出现cblod类型的字段。

  • 4
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值