java.sql.SQLSyntaxErrorException:ORA-01722:invalid number 异常

  • bug异常主要信息如下:
    java.sql.SQLSyntaxErrorException: ORA-01722: invalid number
  • 如图所示:
    ORA-01722 invalid number.png
  1. 先说一下bug的由来,我是用mybatis-plus执行一个删除操作,xxxMapper.deleteById(xxxId),想删除某个id下的一个数据,然后就报错了。
  2. {conn-10001, pstmt-20053} execute error. DELETE FROM WTC_RECEIPT_BACK_T WHERE RECORD_ID = ?
    java.sql.SQLSyntaxErrorException: ORA-01722: invalid number
    ,这里的异常信息也很清晰了,执行sql语句出错,无效的数字类型。原因就是Do对象的主键Id是Long类型,而我传入的Id是String类型,故想执行删除操作行不通。
  3. 值得一提的是,我发现sql执行出错的时候,报的异常信息是分类的java.sql.SQLSyntaxErrorException: ORA-01722xxx,如果是其他操作引起的错误,应该就不是报ORA-01722这个错误信息,如还有ORA-00933:ORA-00923等错误信息。在搜我上面那个错误的时候,还找到了其他比较严谨一点的说法:
  • 这个stackoverflow上面提问的问题:
    错误信息.png
  • stackoverflow上面比较高赞的回答:
    回答.png
  • 如果文章有误,希望指出来。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值