首页 > 数据库 > mysql教程 > 为什么在 MySQL 5.5 中 TYPE=MYISAM 时 MyISAM 表创建失败?

为什么在 MySQL 5.5 中 TYPE=MYISAM 时 MyISAM 表创建失败?

Barbara Streisand
发布: 2024-12-12 22:49:14
原创
822 人浏览过

Why is MyISAM Table Creation Failing with TYPE=MYISAM in MySQL 5.5 ?

无法使用 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中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板