【错误笔记】MyBatis SQLException: 无效的列类型: 1111

问题描述:

  org.springframework.jdbc.UncategorizedSQLException: Error setting null for parameter #1 with JdbcType OTHER . Try setting a different JdbcType for this parameter or a different jdbcTypeForNull configuration property. Cause: java.sql.SQLException: 无效的列类型: 1111

问题分析:

  出现此问题的原因是我们在xml文件中编写SQL时,没有指定参数类型,当我们传递了一个null类型的值进去,程序无法根据入参类型进行自动匹配,只能匹配到OTHER上面,如果这参数是必填的,则会因为类型不一致跑出错误。

解决办法:

  加上类型即可 ,例如jdbcType=VARCHAR ,jdbcType=NUMERIC ......,修改入参代码  :#{param,jdbcType=具体制定的类型},而不是 #{param}

建议:

  最好都显示指定参数类型,养成一个好的编码习惯,避免不必要的异常出现。

posted on   funnyboy0128  阅读(7852)  评论(0编辑  收藏  举报

编辑推荐:
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

导航

统计

点击右上角即可分享
微信分享提示