文档章节

Mybatis 报无效的列类型 两种解决办法

耀子
 耀子
发布于 2015/08/20 15:26
字数 188
阅读 20640
收藏 5

最近忙,好久没来写博文了,惭愧。今天遇到如题的问题,就是在mybatis 插入oracle数据库空值的报的异常:   org.springframework.jdbc.UncategorizedSQLException: Error setting null parameter.  Most JDBC drivers require that the JdbcType must be specified for all nullable parameters. Cause: java.sql.SQLException: Invalid column type ; uncategorized SQLException for SQL []; SQL state [null]; error code [17004]; Invalid column type; nested exception is java.sql.SQLException: Invalid column type

开始sql是这样写的insert into user(id,name) values(#{id},#{name}) 

解决方法:

一、指定插入值得jdbcType,将sql改成 insert into user(id,name) values(#{id,jdbcType=VARCHAR},#{name,jdbcType=VARCHAR}) 


二、在mybatis-config.xml文件中配置一下,添加settings配置,如下:(推荐)

<configuration>

......

<settings>

    <setting name="jdbcTypeForNull" value="NULL" />

</settings>

......

</configuration>

问题解决,继续码码,希望常来写博文,共同学习~~~

© 著作权归作者所有

耀子
粉丝 7
博文 29
码字总数 4672
作品 0
东城
程序员
私信 提问
加载中

评论(2)

安小乐
安小乐
我也是遇到了这个错。我加上jdbcType=VARCHAR后,就不报错了。
安小乐
安小乐
你好,请问,是不是写成#{id,jdbcType=VARCHAR}这种格式,(也就是加上jdbcType=VARCHAR)就算id的值为null,mybatis也不会把这个字段拼到sql语句给数据库执行呢?
Mybatis 插入数据后返回主键值

Oracle中获取刚刚插入记录的主键值: <insert id="insertSelective" parameterType="com.jxxx.p2pp.model.UUserInfo"> <selectKey resultType="java.math.BigDecimal" order="BEFORE" keyProp......

残风vs逝梦
2014/08/18
9.7K
1
MYBATIS 无效的列类型: 1111

前天遇到一个问题 异常显示如下: Exception in thread "main" org.springframework.jdbc.UncategorizedSQLException: Error setting null for parameter #6 with JdbcType OTHER . Try set......

菠萝啊哈哈
2014/03/20
13.3K
1
Mybatis中的jdbcType的作用

Mybatis中的jdbcType的作用 使用MyBatis框架做更新操作时,在该字段需要更新的内容为空时,就会出现1111错误,也就是无效的列类型,这个时候你就要使用jdbcType。至于什么时候要使用到javaT...

architect刘源源
2018/05/03
754
0
mybatis配置文件解析错误解决方法

转:mybatis写mapper文件注意事项 mybatis3mappercdatamybatis3 null xml中某些特殊符号作为内容信息时需要做转义,否则会对文件的合法性和使用造成影响 < < > > & & ' ' " " 在mapper文件中写......

菠萝啊哈哈
2013/07/23
3K
2
通用Mapper插入时处理Null字段有什么好办法

c.z.f.m.s.b.DefaultPublicServiceProcessor - nested exception is org.apache.ibatis.type.TypeException: Could not set parameters for mapping: ParameterMapping{property='wayBillId'......

迷糊涂
2017/03/02
1K
2

没有更多内容

加载失败,请刷新页面

加载更多

如何倒放视频

很多视频通过倒放制作,可以到达不可思议的视觉效果。那这些神奇的倒放视频上如何制作的呢?其实制作方法非常的简单,下面就一起来看看如何倒放视频吧! 具体步骤如下: 第一步: 首先打开手...

白米稀饭2019
34分钟前
3
0
可能是国内第一篇全面解读 Java 现状及趋势的文章

作者 | 张晓楠 Dragonwell JDK 最新版本 8.1.1-GA 发布,包括全新特性和更新! **导读:**InfoQ 发布《2019 中国 Java 发展趋势报告》,反映 Java 在中国发展的独特性,同时也希望大家对 Ja...

阿里巴巴云原生
35分钟前
3
0
Mybatis 配置详解

完整配置 mybatis-config.xml <?xml version="1.0" encoding="UTF-8" ?><!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN" "http://mybatis.org/dtd/mybatis-3-config.......

xiaolyuh
36分钟前
4
0
与Windows用户共享Mac文件

与 Windows 用户共享 Mac 文件 若要允许用户从 Windows 电脑连接到您的 Mac,请打开文件共享和启用 SMB 共享。 在 Mac 上设置文件共享 在 Mac 上,选取苹果菜单 >“系统偏好设置”,然后点按...

W_Lu
42分钟前
6
0
CaaS: 内容是新的基础设施 Content-as-a-Service

内容是每家企业的必争之地,根据 CMI 的数据报告,88% 的 B2B 企业每天至少产生一篇内容。内容正在成为新的基础设施,Content as a Service 可以被简单理解为一种 CMS(Content Management ...

Authing
48分钟前
4
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部