对于具有INT,FLOAT和VARCHAR的简单表,CREATE TABLE命令保持失败

时间:2017-03-22 22:49:40

标签: mysql

MySQL在语法错误方面非常无益。这个命令让我失败了:

mysql> CREATE TABLE test (id INT UNSIGNED AUTO_INCREMENT PRIMARY KEY, text VARCHAR(50), integer INT, floating FLOAT);

出错:

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 'integer INT, floating FLOAT)' at line 1

它甚至没有告诉我什么是错的。当我尝试在线搜索一些语法检查程序时,它给了我一个关于命令的不同部分的错误。

1 个答案:

答案 0 :(得分:1)

integer是MySQL中的保留字,不能直接用作列名。

如果你想使用它,你需要用反引号括起来,例如:

CREATE TABLE test (id INT UNSIGNED AUTO_INCREMENT PRIMARY KEY, 
                   text VARCHAR(50), `integer` INT, floating FLOAT);