### SQL: insert into t_emp values( emp_seq.nextval, ?, ?, ?, ?, ?, ?, ? )
Caused by: org.apache.ibatis.type.TypeException: Error setting null for parameter #6 with JdbcType OTHER . Try setting a different JdbcType for this parameter or a different jdbcTypeForNull configuration property. Cause: java.sql.SQLException: 无效的列类型: 1111
运行时发现以上异常,首先想到是不是哪个列名写错了,找半天没找到任何的1111.
搜索下发现:“MyBatis 插入空值时,需要指定JdbcType”。
确认#6参数(comm)为null后,修改Mapper.xml中的语句增加下面红字部分,异常没有了,问题算是解决了吧。
comm=#{comm,jdbcType=NUMERIC},
insert into emp values(
emp_seq.nextval,
#{ename},
#{job},
#{mgr},
#{hiredate},
#{sal},
#{comm},
#{deptno}
)
修改后代码
insert into emp values(
emp_seq.nextval,
#{ename},
#{job},
#{mgr},
#{hiredate},
#{sal},
#{comm,jdbcType=NUMERIC},
#{deptno}
)