【问题标题】:mysql error 'TYPE=MyISAM'mysql错误'TYPE = MyISAM'
【发布时间】:2012-07-13 08:08:10
【问题描述】:

以下查询我在 Ubuntu 12、MySQL 5.1 版本中执行并收到上述错误:

CREATE TABLE mantis_config_table (
    config_id VARCHAR(64) NOT NULL,
    project_id INTEGER NOT NULL DEFAULT 0,
    user_id INTEGER NOT NULL DEFAULT 0,
    access_reqd INTEGER DEFAULT 0,
    type INTEGER DEFAULT 90,
    value LONGTEXT NOT NULL,
    PRIMARY KEY (config_id, project_id, user_id)
) TYPE=MyISAM;

您的 SQL 语法有错误;检查与您的 MySQL 服务器版本相对应的手册,以在第 9 行的“TYPE=MyISAM”附近使用正确的语法

任何人都可以提出什么问题吗?

【问题讨论】:

  • 是的,用ENGINE=MyISAM 替换TYPE=MyISAM 有效!谢谢大家
  • 所以你不会纠正任何人的答案? :P
  • 我肯定会在一两天内完成

标签: php mysql syntax-error myisam


【解决方案1】:

替换

TYPE=MyISAM

ENGINE=MyISAM

问题是“TYPE=MyISAM”,根据 MySQL 版本更新应该是“ENGINE=MyISAM” - 一个简单的搜索/替换就可以解决它。

【讨论】:

    【解决方案2】:

    不要再使用关键字TYPE。请改用ENGINE

    TYPE 关键字已弃用(自 5.0 起),MySQL5.5 不支持

    CREATE TABLE mantis_config_table 
    ( 
       ...   
    ) 
    ENGINE = MyISAM;
    ^^^^^^--------------------- HERE
    

    【讨论】:

    • 这应该是公认的答案。带有版本信息。
    【解决方案3】:

    在较新的 MySQL 版本中:

    ENGINE=MyISAM
    

    这里是教程(MySQL)

    【讨论】:

    • 感谢您提供相应文档的 URI。
    【解决方案4】:

    使用 ENGINE 而不是 TYPE

    ENGINE = MYISAM ;
    

    【讨论】:

      猜你喜欢
      • 2012-09-07
      • 2014-03-23
      • 1970-01-01
      • 2017-09-28
      • 2012-12-28
      • 2011-05-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多