3

我想创建一个表检查,但我不知道为什么它不在名称检查中创建。我想如果我在命令中犯了任何错误,所以我更改为名称 check1 及其工作。我可以知道原因吗?

CREATE TABLE check(
     name  VARCHAR(100) NOT NULL,
   password VARCHAR(40) NOT NULL

   );
CREATE TABLE check1(
     name  VARCHAR(100) NOT NULL,
   password VARCHAR(40) NOT NULL

   );

在此处输入图像描述

4

5 回答 5

1

check是保留字。

您可以在MySQL 保留字中查看整个列表

编辑
为了改进我的答案(我将来可能需要检查它),并且来自@cja answer的信息,也可以像这样包装表名:

`check`

在这种情况下,名称不被视为保留字。

于 2013-02-26T12:27:09.310 回答
1

check 是 MySQL 中的保留字。

尝试

CREATE TABLE `check` (
  name VARCHAR(100) NOT NULL,
  password VARCHAR(40) NOT NULL
);

但是,如果您选择其他名称,对您来说会更容易。

于 2013-02-26T12:27:13.230 回答
0

http://dev.mysql.com/doc/refman/5.5/en/reserved-words.html

“CHECK”是保留字之一。

于 2013-02-26T12:26:36.187 回答
0

MySQL 有一组保留字。CHECK 就是其中之一。

http://dev.mysql.com/doc/refman/5.0/en/reserved-words.html

于 2013-02-26T12:26:40.633 回答
0

check 是 mysql 中的保留字,所以你不能创建名为“check”的表

CHECK 约束用于限制可以放在列中的值范围。

于 2013-02-26T12:29:46.083 回答