com.alibaba.druid.sql.parser.ParserException: syntax error, expect 

打印 上一主题 下一主题

主题 792|帖子 792|积分 2376

使用mybatis-plus批量插入的时候报错信息为:com.alibaba.druid.sql.parser.ParserException: syntax error, expect ')', pos 40, line 1, column 41, token EOF
排查sql日志发现生成的sql为:
Preparing: INSERT INTO ods_zq_zqgs_zqtz_m VALUES
merge sql error, dbType mysql, druid-1.1.22, sql : INSERT INTO ods_zq_zqgs_zqtz_m VALUES
com.alibaba.druid.sql.parser.ParserException: syntax error, expect ')', pos 40, line 1, column 41, token EOF
可以看出,是sql语法错误,缺失了小括号), 看上面的语句很明显可以看出,生成的sql语句values后面缺失了括号。
 
SQL缺失括号的原因
mybatis-plus批量插入的字段生成依赖对象的属性值,当对象属性值都是null的时候,就发生了上述错误!总得来说算是mybatis-plus的bug。但是考虑的业务上居然插入了一条全是null的记录,确实也不合理!所以说,这个bug的抛出来让开发者解决也可以理解。
 
解决办法
注意插入的对象是否全部属性为null,将某些属性赋值值,或干脆去除此记录即可!
 

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

慢吞云雾缓吐愁

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表