mybatis java.sql.SQLException: 无效的列类型

来源:互联网 发布:阿里云 内网穿透 编辑:程序博客网 时间:2024/05/17 05:50

mybatis报错 java.sql.SQLException: 无效的列类型

原因:

MyBatis 插入空值时,需要指定JdbcType 
mybatis insert空值报空值异常,但是在pl/sql不会提示错误,主要原因是mybatis无法进行转换

java.sql.SQLException: 无效的列类型
 at oracle.jdbc.driver.OracleStatement.getInternalType(OracleStatement.java:3900)
 at oracle.jdbc.driver.OraclePreparedStatement.setNullCritical(OraclePreparedStatement.java:4406)



主要是配置文件sql的参数问题

比如

<select id="select_repair_list" parameterType="String" resultMap="car">
     SELECT car_num
     from car where car_id = #{id}
 </select>


sql要改成


 SELECT car_num
     from car where car_id = #{id,jdbcType=VARCHAR}


如果id是数值  那么id = #{id,jdbcType=NUMERIC}


完毕


阅读全文
0 0