我尝试创建一个我无法弄清楚的表时遇到此错误。我将尝试尽我所能解释它。
在mysql命令行中,我正在输入
CREATE TABLE index(references INT NOT NULL PRIMARY KEY AUTO_INCREMENT, name VARCHAR(600), description VARCHAR(2500));
它重复地给了我1064错误,告诉我在'index(引用INT NOT N ... name VARCHAR(5600),des'。
附近的语法中出现了问题。我已经尝试将表重命名为随机字母,认为它可能是名称,但没有任何想法?我真的很感激任何帮助,谢谢!
编辑:我的版本也支持超过255的VARCHAR。 编辑2:解决了,重命名了几个数据类型名称和表名^。^,感谢大家的帮助!
答案 0 :(得分:2)
我知道这可以通过。使用反向标记。 varchar上的拼写错误。
CREATE TABLE `index`
( `references` INT AUTO_INCREMENT PRIMARY KEY,
`name` VARCHAR(600),
`description` VARCHAR(2500)
);
查看Mysql Reserved Words and Keywords
必须始终特别注意该链接中带有(R)的名称。他们需要背叛。更好的是,选择另一个单词/名称。
编辑:回答下面的一条评论问题。
create table `table2`
(
`id` int auto_increment primary key,
`colB` decimal(12,2) not null
);
insert table2 (colB) values (3.14),(100);
select * from table2;
+----+--------+
| id | colB |
+----+--------+
| 1 | 3.14 |
| 2 | 100.00 |
+----+--------+