前不久在轉(zhuǎn)移DEDE數(shù)據(jù),導(dǎo)入數(shù)據(jù)庫的時候提示dede_purview錯誤,事后發(fā)現(xiàn)錯誤原因是mysql版本的bug,是從mysql5.0導(dǎo)入到mysql5.1引起的。出現(xiàn)這個錯誤原因好象是跟MYSQL數(shù)據(jù)庫版本不對應(yīng)有關(guān),就是兼容性問題,是SQL語法不兼容造成的。本地的版本和服務(wù)器上的不一致的報錯。錯誤位置為“USING BTREE ) ENGINE=MyISAM DEFAULT CHARSET=gbk;”表名為dede_purview,為了快速解決問題,刪除了“USING BTREE”,導(dǎo)入成功。 也可參考以下方法解決:修改表 `dede_purview` 的結(jié)構(gòu)。 -- -- 表的結(jié)構(gòu) `dede_purview` -- CREATE TABLE IF NOT EXISTS `dede_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; 稍作修改即可,改為如下: CREATE TABLE IF NOT EXISTS `dede_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` USING BTREE ( `pkey` )) ENGINE = MYISAM DEFAULT CHARSET = utf8; 這樣再次導(dǎo)入的時候,就不會報錯了,又或者是直接在執(zhí)行此SQL語句建立此表! 避免錯誤方法:本地數(shù)據(jù)庫導(dǎo)出的時候,全選所有表之后,建議先把dede_pruview這張表過濾出來,然后執(zhí)行SQL語句創(chuàng)建數(shù)據(jù)表dede_purview即可。