myBatis将null作为参数传递报错问题
来源:互联网 发布:ubuntu下安装samba 编辑:程序博客网 时间:2024/05/20 20:46
今天在调试的过程中发现一个bug,把传入的参数写到查询分析器中执行没有问题,但是在程序中执行就报错: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:无效的列类型
网上找了很久,才找到了错误原因:myBatis的参数,不能传入null(但是在查询分析器中参数为null是允许的),如果传入了null,SQL在类型匹配时找不到匹配的类型,就会报上面的错。
解决办法:
1、将null替换成“”字符串;
2、在参数后面添加jdbcType=VARCHAR,
例如:把 insert into user(id,name) values(#{id},#{name})
修改成:insert into user(id,name) values(#{id,jdbcType=VARCHAR},#{name,jdbcType=VARCHAR})
就可以解决这个问题了。
0 0
- myBatis将null作为参数传递报错问题
- 将对象作为参数传递
- 将vector作为参数传递
- 关于mybatis的传递参数报错Type handler was null on parameter mapping for property 'userId'.
- C# Winform将控件作为参数传递
- go语言将函数作为参数传递
- 将数组作为参数进行传递
- JS 将函数作为参数传递调用
- 将函数名(地址)作为参数传递
- c++ 将lambda表达式作为参数传递
- lua 将函数作为参数传递
- 将方法作为参数传递(Javascript/Ruby)
- mybatis,Dao层传递多个参数报错
- mybatis存储null到oracle报错问题
- mybatis存储null到oracle报错问题
- mybatis关于传递参数问题
- mybatis参数传递的问题
- MyBatis参数传递的问题
- 无法复制粘贴可以使用clip
- Android - view tag isn't correct on view:null
- SharedPreferencesUtil
- 理解 Objective-C Runtime
- HTML data-*属性
- myBatis将null作为参数传递报错问题
- pixhawk uORB初步分析
- kfaka架构介绍
- 剑指offer之面试题18树的子结构
- NYOJ 42 一笔画问题
- tableView出现空白的解决方案
- myeclipse 远程调试linux下的tomcat
- 安卓中webview的使用方法介绍
- 如何让VMware低版本运行VMware高版本创建的虚拟机