mysql 1064错误:Syntax error

Error code 1064: Syntax error

执行创建数据表语句,下面👇语句报错1064

`usage` text COMMENT '使用信息',

1064错误提示的near后面就是提示sql无法解析的地方。

错误原因Causes for the 1064 error

1 使用保留字Using reserved words

mysql不同版本都有自己的保留字,所以在创建数据表或者查询数据表的时候容易踩坑,这里是mysql5.7的保留字,不同的版本可以切换查看。

解决办法:而我们遇到的报错就命中了保留字usage,所以要么换个名字,要么使用``反引号,这里由于我们线上数据库的限制和简单起见,我们选择将usage换了个名字,就成功了。

2 缺失数据Missing Data

有时在sql查询语句的时候命中缺失的数据,比如

SELECT * from students WHERE studentID = $id
//但是当$id没有填写正确的话,请求语句就会解析为
SELECT * from students WHERE studentID =

解决办法:进入数据库中,把缺失的数据补全

3 命令书写错误Mistyping of Commands

最常见的错误原因是拼写错误,比如

UDPATE table1 SET id = 0;

解决方法:把UDPATE的D,P换个位置,UPDATE
另外附上mysql5.7的Statement/Syntax index以供查询解惑。

4 废弃过时的命令Obsolete Commands

用到的命令已经deprecated废弃了,有些命令会先deprecated,但是仍旧能支持一段时间作为过渡,但是终究会删除掉,比如’TYPE’命令从MYSQL4.1就deprecated,直到MYSQL5.1最终移除,'TYPE’命令被’ENGINE’命令替代

CREATE TABLE t (i INT) TYPE = INNODB;

解决办法:使用新的命令

CREATE TABLE t (i INT) ENGINE = INNODB;

总结

mysql的1064错误基本上就是上面的这些错误原因啦,以后如果遇到更多错误,也会同步更新到这里~~,Happy coding!

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值