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

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

光的传人13年前 (2014-04-30)日志29111

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

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

分享给朋友:

相关文章

谷歌浏览器Chrome 48.0.2564.82稳定版右键手势最小化托盘解决方法(鼠标手势冲突)

谷歌浏览器Chrome 48.0.2564.82稳定版右键手势最小化托盘解决方法(鼠标手势冲突)

今天刚刚升级了谷歌浏览器Google Chrome 48.0.2564.82稳定版,好像是昨天刚刚发布的(其实每次升级都是强迫症导致的,根本没感觉出来功能升级到什么地方了),不过这次发现升级后的最大一个特点了:鼠标手势不好用了(我安装了鼠标...

谷歌扩展程序DIY修改及指定扩展程序的私有密匙已存在解决方法

谷歌扩展程序DIY修改及指定扩展程序的私有密匙已存在解决方法

一直以来使用的谷歌浏览器中比较牛叉的一款插件“SEO in China”,号称是史上最给力的Chrome SEO扩展(没有之一)! 说实话,确实好用,但是不久前谷歌浏览器升级之后就不好用了,在谷歌网上应用商店下到的版本很多功能都不好用了,而...

收到移动10086短信,不要轻信!联通10010也是

收到移动10086短信,不要轻信!联通10010也是

昨晚在坐公交的时候,收到一条10086发来的信息,信息如下:尊敬的用户;您的手机花费积分可以兑换价值50元的话费礼包了请用手机登陆网址;http://baid.us/pVdD进行下载安装打开激活24小时内系统自动充值成功在此先来分析下这条短...

金士顿DTSE9 16G U盘(山寨安国Alcor主控)量产方法及量产工具

金士顿DTSE9 16G U盘(山寨安国Alcor主控)量产方法及量产工具

之前某网站搞活动,注册送积分,积分可以购买一个16G U盘。本博主见到这样的福利后试了一下,没想到真送来了个16G的金士顿DTSE9 U盘。这个U盘怎么说呢,一开始复制东西进去的时候,速度非常快,但是到一半就非常慢,反正使用起来感觉怪怪的。...

2013年的第一天,跟win8说再见!

2013年的第一天,跟win8说再见!

新年的第一天,就遇到了这么多问题!没办法,win8还不像xp那样成熟,问题多多。下面我说一下使用ghost win8(不要说正版不正版,中国盗版系统比正版的好用多啦!每次用正版的不到几天我就重装了!你懂得)出现的问题,就是这些问题堆到一起导...

“网络身份验证请输入用户凭据证”及“用于网络的保存在该计算机上的设置与网络的要求不匹配”终极解决方法大全

“网络身份验证请输入用户凭据证”及“用于网络的保存在该计算机上的设置与网络的要求不匹配”终极解决方法大全

由于白天折腾电脑系统折腾了一天,下午的时候最终安装了自己封装的win7 x64精简纯净版(之前装过一次,没有啥问题)。但是上着上着网,却出现了几个匪夷所思的问题:右下角的无线网标志上竟然有一个叉号,这不是最奇怪的,奇怪的是这种情况下竟然还能...

发表评论

访客

看不清,换一张

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