当前位置:首页 >> 技术方案 >> 详情

织梦dede_purview这个表不能导入#1064 - You have an error in your SQL syntax;解决方法

发布时间:2010-09-05   浏览次数:148次   作者:野狼网络    标签:郑州seo 郑州seo推广 郑州网站推广
给客户做了一个织梦的网站搬迁数据库的时候出现问题了,给我纠结死。

#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 


第一步,想着是数据库版本问题,就找了帝国备份王,以为他能解决这个问题。谁知道结果一样,会出现这样的问题。

第二步,网上查的说是可以修改sql语句:

其他人给出的解决办法

SQL 查询:
-- --------------------------------------------------------
--
-- 表的结构 `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;
 
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
●把USING BTREE 去掉, 这是mysql server不兼容造成的。
●语句应该改成:
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;

事实上就是将 `pkey` ( `pkey` ) 后边的( `pkey` )  移到  USING BTREE 后边。

然后我根据这种办法弄了一下,发现txt打开.sql结尾的数据库备份文件修改之后,无法导入。没有办法还是用了帝国备份王,然后修改了他的PHP文件中的域名,才好。修改也很简单,他的里边也是sql的语句。

搞定。

给其他人留个印记,莫走弯路。