解决mybatis-plus更新数据的时候,有值为空导致更新失败的问题

问题

在用mybatis-plus更新数据的时候,更新失败,错误信息如下:

Cause: org.apache.ibatis.type.TypeException: Could not set parameters for mapping: ParameterMapping{property='et.verificationCode', mode=IN, javaType=class java.lang.Object, jdbcType=null, numericScale=null, resultMapId='null', jdbcTypeName='null', expression='null'}. Cause: org.apache.ibatis.type.TypeException: Error setting null for parameter #5 with JdbcType OTHER . Try setting a different JdbcType for this parameter or a different jdbcTypeForNull configuration property. Cause: java.sql.SQLException: 无效的列类型: 1111

细看错误信息可以看到是用于我要更新的值中有null值导致的,mybatis找不到对应的jdbcType。。。

解决办法

一种是给对应的字段显示的配置上jdbcType,当然这种比较麻烦,所以推荐全局配置

mybatis-plus.configuration.jdbc-type-for-null=varchar

参考文章

https://www.cnblogs.com/pangguoming/p/9041140.html

https://www.cnblogs.com/arebirth/archive/2019/08/30/11436432.html

猜你喜欢

转载自www.cnblogs.com/alinainai/p/13180748.html