Dedecms数据导入错误:USING BTREE ) ENGINE=MyISAM DEFAULT CHARSET=

发布时间:2019-09-08编辑:脚本学堂
dedecms在导入数据时候提示错误USING BTREE ) ENGINE=MyISAM DEFAULT CHARSET= ,小编来讲解一下解决方法。

小编使用万网空间时导入dedecms数据库时前63个表可以成功导入,可是后面几十个表就导入不进去了,提示USING BTREE) ENGINE=MyISAM DEFAULT CHARSET=utf8 at line 7错误。小编来讲解一下,以便大家查询使用。

错误如下代码:

 

-- 表的结构 `xjz_purview` 
-- 
CREATE TABLE IF NOT EXISTS `xjz_purview` ( 

`mid` MEDIUMINT( 8 ) DEFAULT '0', 
`typeid` SMALLINT( 5 ) DEFAULT '0', 
`rank` SMALLINT( 6 ) DEFAULT NULL , 
`pkey` VARCHAR( 30 ) CHARACTER SET latin1 NOT NULL , 
`pvalue` TEXT NOT NULL , 
KEY `pkey` ( `pkey` ) USING BTREE 
) ENGINE = MYISAM DEFAULT CHARSET = utf8;
MySQL 返回:

#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 'USING BTREE) ENGINE=MyISAM DEFAULT CHARSET=utf8' at line 7

错误是 KEY `pkey` (`pkey`) USING BTREE 这一句有问题,我记事本打开发现查找不到,然后直接使用dw找再再搜索发现了 KEY `pkey` (`pkey`) USING BTREE行了,先去掉看看,然后导入时发现又有一个问题提示:

#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 ') ENGINE=MyISAM DEFAULT CHARSET=utf8' at line 7

再查一下发现如下说明:TYPE=MyISAM 和 ENGINE=MyISAM 都是设置数据库存储引擎的语句 ,(老版本的MySQL使用TYPE而不是ENGINE(例如,TYPE = MYISAM).

MySQL 5.1为向下兼容而支持这个语法,但TYPE现在被轻视,而ENGINE是首先的用法,一般地,ENGINE 选项是不必要的,除非默认已经被改变了,MyISAM是默认存储引擎.

查到上面的信息,我的数据库是mysql5.5.8,把TYPE改成ENGINE 就ok了.