首页 > 编程学习 > mysql5.0导入数据时提示 USING BTREE 错误解决办法

mysql5.0导入数据时提示 USING BTREE 错误解决办法

在导入MAGENTO SAMPLE数据时出现USING BTREE错误,主要原因是MYSQL不兼容问题导致。在tag与tag_relation两个表中使用了USING BTREE,但其格式不兼容导致导入失败。修改后即可正常导入了。

修改如下:

PRIMARY KEY (`tag_id`) USING BTREE,

修改为:

PRIMARY KEY `tab_id` USING BTREE(`tag_id`),

PRIMARY KEY (`tag_relation_id`) USING BTREE,

修改为

PRIMARY KEY `tag_relation_id` USING BTREE(`tag_relation_id`),

再次导入数据库则可完整导入。

PS:

错误原因:
主要是是MYSQL 5.1的一个BUG,其出现原因是mysql 5.1和mysql 5.0在处理到索引语句时有所区别。
案例:
有时导入mysql会提示如下错误: ERROR 1064 (42000) at line 486: 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,   KEY `Reference_1_FK` (`RoleID`),   CONSTRAINT `FK_userinfo_RoleID’ at line 11
解决办法:
打开要导入的文件在里面搜索 BTREE 找到如下内容   KEY `columnCindex` (`columnC`) USING BTREE   修改为   KEY `columnCindex` USING BTREE (`columnC`),   然后就可以顺利通过了
总结:

出现了不兼容的情况,在Mysql 5.1中建有UNIQUE KEY 的表导出时是这个样子的“KEY `pkey` (`pkey`) USING BTREE”,

而Mysql 5.0处理的时候只能识别“KEY `pkey` USING BTREE (`pkey`)”。因此需要改一下Key的位置。