java.sql.SQLSyntaxErrorException: #42000

可能是你的逗号为中文标点

这个点很难被排查出来,因为我们排查的时候,会将sql放在正常的sql客户端工具比如Navicate上去运行一遍

以insert语句为例,当你使用的是mybatis的参数映射,你一般会将insert into 表名(字段名xxx...)这一部分拿出来,将后面的部分忽略转而自己造一条数据插入进去,而后面的那些#{}字段可能不是和前面的内容一起写的,可能会使用中文标点,但因为你自己造的数据一直插入成功,就会怀疑自己,

比如下面的代码

 insert into wx_user(
        openid,subscribe,nickname,sex,city,country,province,language,headimgurl,subscribeTime,unionid,remark,groupid) values(#{openid},#{subscribe},#{nickname},#{sex},#{city},#{country},#{province},#{language},#{headimgurl},#{subscribeTime},#{unionid},#{remark},#{groupid})

  

原文地址:https://www.cnblogs.com/akanga/p/11904638.html