欢迎大家来到IT世界,在知识的湖畔探索吧!
背景:
根据开发给的sql创建表,创建失败
mysql> create table zss (
a bigint(20) unsigned AUTO_INCREMENT COMMENT ‘自增主键’,
b_id varchar(64) BINARY NOT NULL DEFAULT ” COMMENT ‘账号ID’,
c tinyint NOT NULL COMMENT ‘状态 0: 好, 1: 很好, 2:非常好’,
d_time datetime DEFAULT ‘2000-11-08 00:00:00’ COMMENT ‘开始时间’,
key varchar(25) NOT NULL DEFAULT ” COMMENT ‘标识’,
e_time datetime NOT NULL DEFAULT ‘2000-09-01 00:00:00’ COMMENT ‘时间’,
PRIMARY KEY(a),
UNIQUE accid(b_id asc)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 AUTO_INCREMENT=1 COMMENT=’a’;
ERROR 1064 (42000): 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 ‘varchar(25) NOT NULL DEFAULT ” COMMENT ‘标识’,
d_time datetime ‘ at line 6
mysql>
处理过程:
根据报错:第6行有问题
在自己的测试环境,测试创建这个字段是否正常
mysql> create table jj(key varchar(25) NOT NULL DEFAULT ” COMMENT ‘标识’);
ERROR 1064 (42000): 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 ‘varchar(25) NOT NULL DEFAULT ” COMMENT ‘用户标识’)’ at line 1
也有报错,确认是这里导致的报错,经过仔细观察应该是字段名用了关键字key导致的,修改字段名试试:正常创建了
mysql> create table jj(key1 varchar(128) NOT NULL DEFAULT ” COMMENT ‘标识’);
Query OK, 0 rows affected (0.34 sec)
总结:
在创建表时,如果有报错,应根据报错提示的行号进行排查,如果无法一眼发现问题,可以在自己的测试环境测试创建这个行号对应的字段,确认是否是这个字段导致的
免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://itzsg.com/22848.html