SQL查询无法在phpMyAdmin上运行,因为我收到错误

时间:2014-09-20 13:01:35

标签: mysql sql phpmyadmin

我已在phpMyAdmin上输入此代码作为SQL查询。我正在尝试创建一个表(这是来自其他站点的复制和粘贴代码)

   CREATE TABLE `members` (
`id` int(4) NOT NULL auto_increment,
`username` varchar(65) NOT NULL default '',
`password` varchar(65) NOT NULL default '',
PRIMARY KEY (`id`)
) TYPE=MyISAM AUTO_INCREMENT=2 ;
-- 
-- Dumping data for table `members`
--
INSERT INTO `members` VALUES (1, 'john', '1234');

我收到错误

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

1 个答案:

答案 0 :(得分:2)

指定存储引擎应该是ENGINE not TYPE:

CREATE TABLE `members` (
`id` int(4) NOT NULL auto_increment,
`username` varchar(65) NOT NULL default '',
`password` varchar(65) NOT NULL default '',
PRIMARY KEY (`id`)
) ENGINE=MyISAM AUTO_INCREMENT=2 ;

请参阅CREATE TABLE syntax

  

table_option:       ENGINE [=] engine_name

使用MySQL 5.5删除了选项TYPE,自MySQL 4.0以来已弃用:

  

较旧的TYPE选项与ENGINE同义。 TYPE已经   自MySQL 4.0以来已弃用,但仍然支持向后   MySQL 5.1中的兼容性(MySQL 5.1.7除外)。自MySQL 5.1.8起,   它会发出警告。它在MySQL 5.5中被删除。你不应该使用   在任何新的应用程序中TYPE,你应该立即开始   将现有应用程序转换为使用ENGINE。 (见   MySQL 5.1.8发行说明。)

来源:CREATE TABLE, MySQL 5.1