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}
完毕