MYSQL表错误 - 1064

时间:2013-07-18 15:27:34

标签: mysql create-table

尝试创建下表:

CREATE TABLE login (
        IdUser int(11) NOT NULL AUTO_INCREMENT,
        username varchar(45) CHARACTER SET latin1 NOT NULL,
        pass varchar(45) CHARACTER SET latin1 NOT NULL,
        PRIMARY KEY (IdUser),
        ENGINE=MyISAM AUTO_INCREMENT=1 DEFAULT CHARSET=utf8$$);

似乎无法正常工作。我在MYSQL中遇到的错误是:

  

#1064 - 您的SQL语法出错;查看与您的MySQL服务器版本对应的手册,以便在第6行'= MyISAM AUTO_INCREMENT = 1 DEFAULT CHARSET = utf8 $$'附近使用正确的语法

2 个答案:

答案 0 :(得分:3)

支架在错误的位置:

PRIMARY KEY (IdUser),
ENGINE=MyISAM AUTO_INCREMENT=1 DEFAULT CHARSET=utf8$$);
                                                     ^----

应该是

PRIMARY KEY (IdUser)   <--note removed comma
) ENGINE=MyIsam etc...
^---

您将这些表选项视为字段,方法是将它们放在()字段定义块中。

答案 1 :(得分:0)

在我的情况下,某些sql正在运行,但在更改Type = ENGINE后大多数时间无效。

CREATE TABLE `p4_acl_page` (
  `id` int(2) NOT NULL auto_increment,
  `label` varchar(80) default NULL,
  `lastupdate` timestamp(14) NOT NULL,
  PRIMARY KEY (`id`)
) ENGINE=MyIsam;