无法使用 TYPE=MYISAM 创建表
尝试使用旧 TYPE 语法创建表时,例如:
CREATE TABLE dave_bannedwords( id INT( 11 ) NOT NULL AUTO_INCREMENT , word VARCHAR( 60 ) NOT NULL DEFAULT '', PRIMARY KEY ( id ) , KEY id( id ) ) TYPE = 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 'TYPE=MyISAM' at line 6
解决方案
如 MySQL 文档中 CREATE TABLE 语法所述:
“旧的 TYPE 选项与 ENGINE 同义.TYPE 在 MySQL 4.0 中已弃用,并在 MySQL 5.5 中删除。或更高版本,您必须将依赖 TYPE 的现有应用程序转换为使用 ENGINE。”
因此,将 TYPE 替换为 ENGINE 即可成功创建表:
CREATE TABLE dave_bannedwords( id INT(11) NOT NULL AUTO_INCREMENT, word VARCHAR(60) NOT NULL DEFAULT '', PRIMARY KEY (id), KEY id(id) -- this is superfluous in the presence of your PK, ergo unnecessary ) ENGINE = MyISAM ;
以上是为什么在 MySQL 5.5 中 TYPE=MYISAM 时 MyISAM 表创建失败?的详细内容。更多信息请关注PHP中文网其他相关文章!