用户登录
用户注册

分享至

mysql错误代码之1064的解决方案

  • 作者: Heiy
  • 来源: 51数据库
  • 2021-11-03

sql语句中词和mysql的关键字冲突了,用 `` (tab键上方)将词括起来就好了。

原来的sql语句

<insert id="insert" parametertype="com.zhangman.manman.entity.user" >
 insert into user (id, username, password,name,desc,email,birthday,phone,status,createtime,roleid)
 values (#{id,jdbctype=integer}, #{username,jdbctype=varchar}, #{password,jdbctype=varchar}, 
  #{name,jdbctype=varchar}, #{desc,jdbctype=varchar}, #{email,jdbctype=varchar}, 
  #{birthday,jdbctype=varchar}, #{phone,jdbctype=varchar}, #{status,jdbctype=integer}, 
  #{createtime,jdbctype=date}, #{roleid,jdbctype=integer})
 </insert>

改正后的 sql(注意,字段和表名都用``括起来了)

<insert id="insert" parametertype="com.zhangman.manman.entity.user" >
  insert into `user`
   (username, `password`,`name`,`desc`,email,birthday,phone,`status`,createtime,roleid)
   values (#{username}, #{password},#{name}, #{desc},#{email},
    #{birthday}, #{phone}, #{status},
    #{createtime}, #{roleid})
 </insert>

补充:mysql error 1064 (42000)同样的错误,不一样的解决方法

开始时代码是这样:

然后运行:

代码根本毫无错误,但为什么会出错呢?在我花了2个小时后终于知道了答案。

我没有加分号!!!!!

修改后代码:

然后再次运行后:

再一次为自己的无知和粗心感到绝望!!!

以上为个人经验,希望能给大家一个参考,也希望大家多多支持。如有错误或未考虑完全的地方,望不吝赐教。

软件
前端设计
程序设计
Java相关