文档章节

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

耀子
 耀子
发布于 2015/08/20 15:26
字数 188
阅读 16650
收藏 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>

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

© 著作权归作者所有

共有 人打赏支持
耀子
粉丝 6
博文 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
0
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
0
1
Mybatis中的jdbcType的作用

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

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

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

菠萝啊哈哈
2013/07/23
0
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
311
2

没有更多内容

加载失败,请刷新页面

加载更多

开始看《Java学习笔记》

虽然书买了很久,但一直没看。这其中也写过一些Java程序,但都是基于IDE的帮助和对C#的理解来写的,感觉不踏实。 林信良的书写得蛮好的,能够帮助打好基础,看得出作者是比较用心的。 第1章概...

max佩恩
昨天
11
0
Redux 三大原则

1.单一数据源 在传统的MVC架构中,我们可以根据需要创建无数个Model,而Model之间可以互相监听、触发事件甚至循环或嵌套触发事件,这些在Redux中都是不被允许的。 因为在Redux的思想里,一个...

wenxingjun
昨天
7
0
跟我学Spring Cloud(Finchley版)-12-微服务容错三板斧

至此,我们已实现服务发现、负载均衡,同时,使用Feign也实现了良好的远程调用——我们的代码是可读、可维护的。理论上,我们现在已经能构建一个不错的分布式应用了,但微服务之间是通过网络...

周立_ITMuch
昨天
4
0
XML

学习目标  能够说出XML的作用  能够编写XML文档声明  能够编写符合语法的XML  能够通过DTD约束编写XML文档  能够通过Schema约束编写XML文档  能够通过Dom4j解析XML文档 第1章 xm...

stars永恒
昨天
2
0
RabbitMQ学习(2)

1. 生产者客户端 void basicPublish(String exchange, String routingKey, boolean mandatory, boolean immediate, BasicProperties props, byte[] body) 1. 在生产者客户端发送消息时,首先......

江左煤郎
昨天
4
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部