当前位置:首页 > 日志 > 正文内容

You have an error in your SQL syntax解决方法

光的传人12年前 (2014-04-30)日志28983

在网站搬家的时候,用帝王备份还原时出现如下代码:

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 ) TYPE=MyISAM' at line 18

CREATE TABLE `oil_strayer_evo` ( `id` int(10) unsigned NOT NULL AUTO_INCREMENT, `content_get_type` tinyint(1) NOT NULL, `content_rules` text NOT NULL, `theme_get_type` text NOT NULL, `theme_rules` text NOT NULL, `detail_ID` varchar(255) NOT NULL, `detail_ID_test` varchar(255) NOT NULL, `domain_hash` char(32) NOT NULL, `domain` varchar(100) NOT NULL, `hit_num` int(10) NOT NULL, `status` tinyint(1) unsigned NOT NULL, `dateline` int(10) unsigned NOT NULL, `evo_text_info` text NOT NULL, `evo_title_info` text NOT NULL, `detail_ID_hash` char(32) NOT NULL, PRIMARY KEY (`id`), KEY `domain_hash` (`domain_hash`,`detail_ID_hash`) USING BTREE ) TYPE=MyISAM

好像是DZ里面的表有问题,经过搜索,发现有人说是数据库版本问题,从MySQL 5.1.63版本转移到5.0版本,高版本往低版本转移。我就尝试了下在备份数据的时候,选择了转成MYSQL4.0格式,这个选项。但是还原数据时,仍然是出现以上错误,到底要怎么解决呢?

直接从PhpMyAdmin导出,再导入也尝试了,也是出现了问题。应该是一样的问题。怎么解决呢?

最简单的办法,放弃有问题的数据库(貌似不现实),继续还原别的数据库。

有没有两全其美的解决办法呢?明天继续摸索吧~比较晚了,该睡觉了!

第二天继续研究:

通过不断测试,终于发现问题所在!错误代码中最后有一个“ KEY `domain_hash` (`domain_hash`,`detail_ID_hash`) USING BTREE ) TYPE=MyISAM”,通过搜索这段代码,发现织梦系统也出现类似状况,详见百度经验“织梦数据库导入提示USING BTREE 错误的解决办法”,归根结底问题的关键在于mysql 5.14版本之前不认识 USING BTREE,sql执行到这一段就进行不下去了。参照经验中的改法,我修改了出错的`oil_strayer_evo`备份文件,“KEY `domain_hash` (`domain_hash`,`detail_ID_hash`) USING BTREE ”修改为“KEY `domain_hash`  USING BTREE  (`domain_hash`,`detail_ID_hash`)”。再试一下,发现这个文件没报错,又出现另外的文件报错,原因是一样的。于是搜索全部包含”USING BTREE“代码的文件,改掉,再恢复数据!

终于大功告成!

总结:You have an error in your SQL syntax解决方法,仔细察看报错代码,如果代码中包含”USING BTREE“那么恭喜你,看到本文就有救了!搜索备份文件夹中(不管是织梦也好DZ也好,原理都一样)所有包含USING BTREE“的文件,把这段代码提前到前面()代码前面。比如原来是KEY `pkey` (`pkey`) USING BTREE  ,就可以修改为KEY `pkey`  USING BTREE (`pkey`)   。修改完成后,再试一下,是不是恢复数据成功了呢?

扫描二维码推送至手机访问。

版权声明:本文由光的传人博客www.liu16.com发布,如需转载请注明出处。

本文链接:http://www.liu16.com/post/USINGBTREE.html

分享给朋友:

相关文章

正则表达式的语法表

正则表达式的语法表

正则表达式是一种文本模式,包括普通字符(例如,a 到 z 之间的字母)和特殊字符(称为“元字符”)。模式描述在搜索文本时要匹配的一个或多个字符串。正则表达式,又称正规表示法、常规表示法(英语:Regular Expression,在代码中常...

MIUI7后台自动开启数据流量(锁屏状态也会自启)解决方法大全

MIUI7后台自动开启数据流量(锁屏状态也会自启)解决方法大全

自从MIUI7给红米手机1适配后,我的红米手机就用上了最新的MIUI系统。整体感觉还不错,但是使用一段时间后,问题来了,就算刷了官方的MIUI7完整包,也会出现数据流量自动在后台启动偷跑流量,怎么关都关不住!昨天刷了快乐我期待大大的纯净版系...

拓实N815/N812改装记——大功率网卡天线增强改造

拓实N815/N812改装记——大功率网卡天线增强改造

最近被一块大功率网卡折腾得够呛,起初是因为之前一直使用的一款大功率网卡(拓实N9系列的,平板天线上写着:CMCC WLAN  TS-N9高增益接收器,然而在淘宝上搜了很久没有搜到同款,毕竟五六年前的产品了)由于某种原因送人了,自己...

圣诞之日,光的传人--阿光的博客低调上线

圣诞之日,光的传人--阿光的博客低调上线

很久以来,给学校、企业做了那么多的网站(其实也不多,还能数的过来),一直想拥有一个自己的网站。今天,在这举国欢庆、争占外国节日商机的圣诞之日,我自己的第一个独立博客——光的传人,阿光的博客低调上线了!第一次知道Z-b...

2014年5月思想汇报-火车站砍人事件

2014年5月思想汇报-火车站砍人事件

近来,多地火车站发生了砍人事件,其恶劣行为令人发指!2014年3月1日晚间云南昆明火车站发生恐怖分子砍人事件,造成29人死亡、130余人受伤;3月22日怀化火车站砍人事件,一青年男子持刀砍伤路人3人;5月2日、3日,衡阳市火车站附近连续发生...

shopex出现No input file specified.解决方法

shopex出现No input file specified.解决方法

今天在新建的shopex商城后台添加应用的时候,出现了No input file specified.问题。问了下度娘,也没有问出个所以然来!原来百度也有不知道的东西啊!于是跟空间商联系。把问题说清楚后,空间商竟然一下子说出了问题的根结以及...

发表评论

访客

看不清,换一张

◎欢迎参与讨论,请在这里发表您的看法和观点。