如何修复错误“You have an error in your syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near… ”?


这种错误出现在您使用了错误的语法时。让我们来看一个创建表的示例,其中出现了相同的错误“1054”。

以下是表格:

mysql> create table DemoTable689(
   UserId int NOT NULL AUTO_INCREMENT PRIMARY KEY,
   UserName varchar(100),
   UserLoginDate date(100) NOT NULL
);

这将产生以下输出,即错误的语法使用错误:

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 '(100) NOT NULL
)' at line 5

现在让我们修复错误 1054。为此,您只需要使用 DATE NOT NULL。让我们先创建一个表:

mysql> create table DemoTable689(
   UserId int NOT NULL AUTO_INCREMENT PRIMARY KEY,
   UserName varchar(100),
   UserLoginDate date NOT NULL
);
Query OK, 0 rows affected (0.68 sec)

使用 insert 命令在表中插入一些记录:

mysql> insert into DemoTable689(UserName,UserLoginDate) values('John',DATE(NOW()));
Query OK, 1 row affected (0.40 sec)
mysql> insert into DemoTable689(UserName,UserLoginDate) values('Chris','2018-01-21');
Query OK, 1 row affected (0.21 sec)
mysql> insert into DemoTable689(UserName,UserLoginDate) values('Robert',CURDATE());
Query OK, 1 row affected (0.20 sec)

使用 select 语句显示表中的所有记录:

mysql> select *from DemoTable689;

这将产生以下输出。现在,我们已经修复了错误:

+--------+----------+---------------+
| UserId | UserName | UserLoginDate |
+--------+----------+---------------+
|      1 | John     | 2019-07-21    |
|      2 | Chris    | 2018-01-21    |
|      3 | Robert   | 2019-07-21    |
+--------+----------+---------------+
3 rows in set (0.00 sec)

更新于: 2019年8月26日

43K+ 次查看

开启您的 职业生涯

通过完成课程获得认证

开始学习
广告