学习sql创建表会给出错误

时间:2013-06-15 08:31:53

标签: mysql phpmyadmin

我正在学习使用phpmyadmin并且有一个数据库tshirtshop现在有一个表部门我想创建一个类别表但是phpmyadmin中的sql给出了我的错误以下是SQL查询

CREATE TABLE 'category' ( 
'category_id' INT NOT NULL AUTO_INCREMENT, 
'department_id' INT NOT NULL, 
'name' VARCHAR(100) NOT NULL, 
'description' VARCHAR(1000), 
PRIMARY KEY ('category_id'), 
KEY 'idx_category_department_id' ('department_id') 
) ENGINE=MyISAM; 

以下是错误
 #1064 - 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 ''category' ( 'category_id' INT NOT NULL AUTO_INCREMENT, 'department_id' INT NOT ' at line 1

我该怎么做才能消除错误?

2 个答案:

答案 0 :(得分:2)

正确的查询是

CREATE TABLE `category` ( 
  `category_id` INT NOT NULL AUTO_INCREMENT, 
  department_id INT NOT NULL, 
  name VARCHAR(100) NOT NULL, 
  description VARCHAR(1000), 
  PRIMARY KEY (`category_id`), 
  KEY `idx_category_department_id` (`department_id`) 
) ENGINE=MyISAM; 

你不能使用单引号括起字段名称或表名,使用tilt`或不使用任何东西。在我的查询中,我尝试使用它们只是为了向您展示。

答案 1 :(得分:1)

尝试将转义字符从'更改为`。 MySQL认为你的对象名是字符串。

CREATE TABLE `category` ( 
`category_id` INT NOT NULL AUTO_INCREMENT, 
`department_id` INT NOT NULL, 
`name` VARCHAR(100) NOT NULL, 
`description` VARCHAR(1000), 
PRIMARY KEY (`category_id`), 
KEY `idx_category_department_id` (`department_id`) 
) ENGINE=MyISAM;