星星之火-MySQL建表时报错[42000][1064]
本文最后更新于:December 3, 2021 pm
积土成山,风雨兴焉;积水成渊,蛟龙生焉;积善成德,而神明自得,圣心备焉。故不积跬步,无以至千里,不积小流无以成江海。齐骥一跃,不能十步,驽马十驾,功不在舍。面对悬崖峭壁,一百年也看不出一条裂缝来,但用斧凿,能进一寸进一寸,能进一尺进一尺,不断积累,飞跃必来,突破随之。
目录
写者的MySQL版本是 8.0.26 的。
1.SQL建表语句
1 |
|
2.报错
[42000] [1064] You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ‘’id’ varchar(10) primary key not null, ‘name’ varchar(20) not null, ‘pwd’ at line 2
3.原因
在MySQL命令在IDEA中使用sql语句进行建表时,MySQL 报错。看上去那条sql语句确实没毛病,但是运行起来就是报错。报错信息也如上。
其实这个问题就是语法上的错误,在MySQL中,为了区分MySQL的关键字与普通字符,MySQL引入了一个反引号(`)。反引号也就在波浪号位置。
详情见官网:https://dev.mysql.com/doc/refman/5.5/en/keywords.html
在上述的sql语句中,列名称使用的是单引号
而不是反引号
,所以会报了这个错误出来。
4.解决办法
解决办法就是将字段的单引号改为反引号,如下:
1 |
|
再次运行就不会报错了。但是有一点需要注意,后面列的注释不能用反引号,因为这只是一个普通字符串,不是MySQL的关键字。
还有一种办法就是字段不写反引号。如下,可自行尝试。
1 |
|
本文作者: 墨水记忆
本文链接: https://tothefor.com/DragonOne/3147412332.html
版权声明: 本博客所有文章除特别声明外,均采用 CC BY-SA 4.0 协议 ,转载请注明出处!