【MyBatis】如何应对MyBatis爆出的“错误:无效的列类型1111”

【错误的发生场合】

当把null值赋给一个字段时。

【应对措施】

MyBatis官方文档指出:“如果对一个属性字段,需要传递null入内,jdbcType是必要的。”

所以,对于给属性字段可能赋空值的场合,需要显式指定可能为空的参数类型,如:

update_uid=#{uid,jdbcType=NUMERIC};                // 数字型

value_from=#(valueFrom,jdbcType=VARCHAR};   // 字符串型

update_time=#{utime,jdbcType=TIMESTAMP};      // 时间戳型

【吐槽】

出这个异常实际是MyBatis给字段赋值时遇到null不知怎么处理,它内部对不同类型自然是有预案的,但需要使用者显式指定一种。

但是,“错误:无效的列类型1111”  这种反馈信息是不是太随意了,很难想象这是一个有广泛受众的DB框架爆出的错误信息。希望整改措施早日出现。

END

 

posted @   逆火狂飙  阅读(639)  评论(0编辑  收藏  举报
编辑推荐:
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
阅读排行:
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 【杭电多校比赛记录】2025“钉耙编程”中国大学生算法设计春季联赛(1)
历史上的今天:
2019-12-28 【高中数学/基本不等式】若实数a>1,b>2,且满足2a+b-6=0,则1/(a-1)+2/(b-2)的最小值为?
2017-12-28 【Canvas与标牌】红蓝白“沈海高速”标牌
2017-12-28 【Canvas与标牌】红蓝白Top Gun商标
2017-12-28 【Canvas与标牌】"最新消息"标牌
2017-12-28 【Canvas与卡通】褐色小熊头像
2017-12-28 【Canvas与国旗】阿萨德时期叙利亚国旗(非标准制图)
2017-12-28 求函数 y=x^2-2x-3/2x^2+2x+1 的极值
生当作人杰 死亦为鬼雄 至今思项羽 不肯过江东
点击右上角即可分享
微信分享提示