我正在尝试做一些非常简单的事情 - 通过phpMyAdmin向我的数据库添加一个表。出于某种原因,以下引发了5个错误:
CREATE TABLE group (
id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
name VARCHAR(255)
) DEFAULT CHARACTER SET utf8 ENGINE=InnoDB
phpMyAdmin告诉我以下是错误的。
预计该实体的名称。 (位于第13位的“组”附近) 预计开幕式。 (位于第13位的“组”附近) 预计至少有一个列定义。 (在12号位置附近“”) 意外的开始声明。 (位置26的“id”附近) 无法识别的语句类型。 (位置29处的“INT”附近)
我想知道为什么会出现这个错误,以及我是否可以采取任何措施来解决它。
答案 0 :(得分:0)
在单词" group"周围使用单个刻度线;像这样:
CREATE TABLE `group` (
id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
name VARCHAR(255)
) DEFAULT CHARACTER SET utf8 ENGINE=InnoDB
问题是" group"是一个保留字。您可以在此处详细了解:https://dev.mysql.com/doc/refman/5.5/en/keywords.html
答案 1 :(得分:0)
“group”是MySQL中的保留关键字,你需要将它包装在后面的刻度字符中,以便逃避:
CREATE TABLE `group` (id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
name VARCHAR(255)
) DEFAULT CHARACTER SET utf8 ENGINE=InnoDB