Cause: java.sql.SQLException: 无效的列类型: 1111 20251415编辑

Heaven helps those who help themselves
资深码农+深耕理财=财富自由
欢迎关注

Cause: java.sql.SQLException: 无效的列类型: 1111

Created by Marydon on 2022-05-30 16:34

1.情景展示

使用mybatis给Oracle表插入数据的时候,报错信息如下:

org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.type.TypeException: Could not set parameters for mapping: ParameterMapping{property='VERCODE', 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 #6 with JdbcType OTHER . Try setting a different JdbcType for this parameter or a different jdbcTypeForNull configuration property. Cause: java.sql.SQLException: 无效的列类型: 1111

2.具体分析

我们知道,在SQL语句当中,如果我们在执行插入的时候,指定了某个字段,但并没有给值的情况下;

默认情况下,在插入数据时,该字段值为NULL(也就是没有给这个字段赋值)。

3.解决方案

为参数指定数据类型。

在xml里加上对应的数据类型:如下,这里我的是字符串,加:jdbcType=VARCHAR

再次执行,SQL语句输出如下:

插入成功。

同样地,如果需要将字段值更新为null的话,也需要加上。

<update id="updateJkdaUser" parameterType="hashmap">
UPDATE JKDA_USER SET VERCODE=#{VERCODE,jdbcType=VARCHAR} WHERE TELPHONE=#{TELPHONE}
</update>

 

写在最后

  哪位大佬如若发现文章存在纰漏之处或需要补充更多内容,欢迎留言!!!

 相关推荐:

与君共勉:最实用的自律是攒钱,最养眼的自律是健身,最健康的自律是早睡,最改变气质的自律是看书,最好的自律是经济独立 。

您的一个点赞,一句留言,一次打赏,就是博主创作的动力源泉!

↓↓↓↓↓↓写的不错,对你有帮助?赏博主一口饭吧↓↓↓↓↓↓

posted @   Marydon  阅读(1415)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
历史上的今天:
2019-05-30 exception The absolute uri: [http://java.sun.com/jsp/jstl/core] cannot be resolved in either web.xml or the jar files deployed with this application
点击右上角即可分享
微信分享提示
sorry,本博客所有代码禁止复制,原创代码需扫码支付方可获取!
关闭

1、先加好友再付费,点我加好友;

2、代码不能满足你的需求?加好友付费定制你的专属代码!

3、付费标准及方式,点我查看详情。