【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
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 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 的极值