适用于入参类型为对象的
刚学习完mybatis如何插入空值,现在来总结一下

上面是我的项目,打开测试类,插入空值试一下



上面是我的Mapper文件、实体类和测试类,方法传的是对象类型的,25行是设置姓名的,现在不设置姓名执行一下实体类

控制台报错,不能为映射设置参数,无效的列类型
解决方法:在mapper文件调用的方法设置idbcType,由于我的sName是String类型的,处理空值设置 jdbcType=VARCHAR,这里要注意不同类型设置的jdbaType是不一样的,参考下图


设置结束,再次执行测试类测试

执行成功,看一下数据库,空值插入成功了

切记,数据库字段名不要设置非空约束,设置了会报sql异常错误,重要的话说三遍
切记,数据库字段名不要设置非空约束,设置了会报sql异常错误,重要的话说三遍
切记,数据库字段名不要设置非空约束,设置了会报sql异常错误,重要的话说三遍
设置非空约束就会这样,数据库把约束删掉就行了

本文介绍在MyBatis中如何正确地插入空值,特别是在字段未设置非空约束的情况下。通过设置jdbcType属性为VARCHAR可以有效处理字符串类型的空值问题,并提供了具体的代码示例。
614

被折叠的 条评论
为什么被折叠?



