Mybatis java.lang.IllegalArgumentException: uncategorized SQLException for SQL []; SQL state [null]

1、数据库字段原类型为Date 类型,因为数据原因,将该字段换为String类型,结果导致Mybatis 报出java.lang.illegalargumentexception,

 因为数据库的变动我并不知晓,所以这个问题查了好久

2、解决过程 

    首先认为是SQL原因,但是Mybatis 组装的语句放到PLSQL中执行没有错误

  接下来定位到数据库更换是不是有地方不一样,结果找到了有相同命名的一个字段,原数据库类型为Date ,改变数据库后,字段类型为String

    下面就定位到执行SQL后,返回的数据和定义的数据类型不一致,导致报错

3、解决方法

    修改定义的对象的字段类型为String

4、结论

  写好代码之后,最好迁移数据时保持一致,或者在进行修改后检查对现有代码的影响。

posted on 2016-09-07 21:41  飞肠剑  阅读(6464)  评论(0编辑  收藏  举报

导航