创建表失败

时间:2010-10-13 18:23:36

标签: sql mysql

CREATE TABLE  `surfkid-db`.`Channels` (`name` VARCHAR( 30 ) NOT NULL ,`commercial` BOOL( 1 ) NOT NULL DEFAULT  '0' AUTO_INCREMENT ,`usrid` INT( 5 ) NOT NULL DEFAULT  '0' AUTO_INCREMENT ,`id` INT( 5 ) NOT NULL AUTO_INCREMENT PRIMARY KEY) 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 '(1) NOT NULL DEFAULT '0' AUTO_INCREMENT, `usrid` INT(5) NOT NULL DEFAULT '0' AUT' at line 1 

我无法提供错误消息,抱歉,请帮助

2 个答案:

答案 0 :(得分:4)

我相信只有INT可以是AUTO_INCREMENT,而且我很确定只有主键可以自动递增。

答案 1 :(得分:1)

您不需要为BIT和INT字段指定大小,AUTO_INCREMENT也不适用于BOOL。试试这个:

CREATE TABLE  `surfkid-db`.`Channels` 
(
  `id` INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
  `name` VARCHAR(30) NOT NULL ,
  `commercial` BOOL NOT NULL DEFAULT  0,
  `usrid` INT NOT NULL DEFAULT  0
)