ECShop 网上商店系统支持论坛's Archiver

shoppyman 发表于 2007-6-1 15:55

转移空间出错

[b]MySQL server error report:Array ( [0] => Array ( [message] => MySQL Query Error ) [1] => Array ( [sql] => CREATE TABLE `ecs_activity` ( `activity_id` smallint(5) unsigned NOT NULL auto_increment, `action_code` varchar(80) NOT NULL default '', `name` varchar(120) NOT NULL default '', `start_time` int(10) unsigned NOT NULL default '0', `end_time` int(10) unsigned NOT NULL default '0', `description` varchar(255) NOT NULL default '', PRIMARY KEY (`activity_id`), KEY `action_code` (`action_code`), KEY `start_time` (`start_time`), KEY `end_time` (`end_time`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 ) [2] => Array ( [error] => 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 'DEFAULT CHARSET=utf8' at line 12 ) [3] => Array ( [errno] => 1064 ) ) [/b]


[b]以上代码是在本地使用完好,可是转移到网上空间的时候出现这样的情况,迫切希望大家帮忙解决[/b]

liry 发表于 2007-6-1 16:13

这是因为空间上的MySQL版本过低,与之前备份出来的SQL文件有不兼容的地方。我们检查一下,尽快给出解决方案。

wj 发表于 2007-6-1 16:25

这是服务器mysql不支持字符集造成的。
你现在需要把备份出来的sql文件中  DEFAULT CHARSET=utf8 字串全部删除就行。可以随便找个编辑器,如windows自带的notepad。用户utf8编码打开sql文件,文件如果没出现乱码,就说明说明编码选对了。然后用查找替换,查找DEFAULT CHARSET=utf8 并将其替换为空,用utf8编码保存即可。

shoppyman 发表于 2007-6-1 16:36

那大概什么时候能帮忙解决下呢

liry 发表于 2007-6-1 16:41

您用楼上说的方法试下,看能否解决。

shoppyman 发表于 2007-6-1 16:47

查找DEFAULT CHARSET=utf8 并将其替换为空,用utf8编码保存即可。
上面这个怎么实现

shoppyman 发表于 2007-6-1 16:48

我按你的做了,出现下面的
MySQL server error report:Array ( [0] => Array ( [message] => MySQL Query Error ) [1] => Array ( [sql] => INSERT INTO `ecs_admin_log` ( `log_id`, `log_time`, `user_id`, `log_info`, `ip_address` ) VALUES ('1', '1180158859', '1', '添加商品分类: 联想笔记朿, '222.73.4.69') ) [2] => Array ( [error] => 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 '222.73.4.69')' at line 1 ) [3] => Array ( [errno] => 1064 ) )

liry 发表于 2007-6-1 17:01

'添加商品分类: 联想笔记朿      这里缺了个单引号('). 逗号两边的单引号是配对的,缺了一个都会报错的 :)

shoppyman 发表于 2007-6-1 17:20

怎么改呀,里面显示中文的时候都是乱码

shoppyman 发表于 2007-6-2 10:15

还有怎么用utf8编码保存

失落的天空 发表于 2007-6-2 14:00

这个由于数据库默认不是utf8编码导致的。是我们程序疏忽。一下提供临时解决方案:
1.将备份文件另存到本地。
2.用文本编辑器打开,注意要用utf8编码打开。如果不是utf编码打开会看到乱码。
3.备份文件中一CREATE TABLE 开头的那行结尾 为 ENGINE=MyISAM ,将其改为 ENGINE=MyISAM DEFAULT CHARSET=utf8 。大约有60行左右要改。
4.用uft8编码保存。上传到服务器执行。


学会搜索:victory:

shoppyman 发表于 2007-6-2 14:17

3.备份文件中一CREATE TABLE 开头的那行结尾 为 ENGINE=MyISAM ,将其改为 ENGINE=MyISAM DEFAULT CHARSET=utf8 。大约有60行左右要改。

这句话的操作能说明详细点么。。。是把CREATE TABLE 这个变成ENGINE=MyISAM DEFAULT CHARSET=utf8 是吧???
还是把那一段改成ENGINE=MyISAM DEFAULT CHARSET=utf8

shoppyman 发表于 2007-6-2 14:33

-- ecshop v2.x SQL Dump Program
-- [url]http://127.0.0.1[/url]
--
-- DATE : 2007-06-02 14:29:14
-- MYSQL SERVER VERSION : 5.0.18-nt
-- PHP VERSION : 5.1.2
-- ECShop VERSION : v2.1.5
-- Vol : 1
DROP TABLE IF EXISTS `ecs_admin_user` ;

失落的天空 发表于 2007-6-2 15:31

:L [quote]原帖由 [i]shoppyman[/i] 于 2007-6-2 14:17 发表 [url=http://bbs.ecshop.com/redirect.php?goto=findpost&pid=56523&ptid=28434][img]http://bbs.ecshop.com/images/common/back.gif[/img][/url]
3.备份文件中一CREATE TABLE 开头的那行结尾 为 ENGINE=MyISAM ,将其改为 ENGINE=MyISAM DEFAULT CHARSET=utf8 。大约有60行左右要改。

这句话的操作能说明详细点么。。。是把CREATE TABLE 这个变成ENGINE= ... [/quote]
高深问题等周一官方解决,俺也不懂,我可能还 不如你呢:Q

cuizh1976 发表于 2007-11-15 08:21

标记:lol

luge 发表于 2008-8-21 06:24

官方出解决方案了吗?

页: [1]

Powered by Discuz! Archiver 6.1.0  © 2001-2007 Comsenz Inc.