错误描述
当前状态: 检查管理员账号信息并开始安装 Discuz!。
--------------------------------------------------------------------------------
> 检查管理员账号
检查信息合法性... 成功
--------------------------------------------------------------------------------
> 选择数据库
选择数据库 29154 ... 成功
--------------------------------------------------------------------------------
> 建立数据表
建立数据表 cdb_access ... 成功
建立数据表 cdb_activities ... 成功
建立数据表 cdb_activityapplies ... 成功
建立数据表 cdb_adminactions ... 成功
建立数据表 cdb_admingroups ... 成功
建立数据表 cdb_adminnotes ... 成功
建立数据表 cdb_adminsessions ... 成功
建立数据表 cdb_advertisements ... 成功
建立数据表 cdb_announcements ... 成功
建立数据表 cdb_attachments ... 成功
建立数据表 cdb_attachtypes ... 成功
建立数据表 cdb_banned ... 成功
建立数据表 cdb_bbcodes ... 成功
建立数据表 cdb_blogcaches ... 成功
建立数据表 cdb_buddys ... 成功
建立数据表 cdb_creditslog ... 成功
建立数据表 cdb_crons ... 成功
建立数据表 cdb_failedlogins ... 成功
建立数据表 cdb_favorites ... 成功
建立数据表 cdb_forumfields ... 成功
建立数据表 cdb_forumlinks ... 成功
建立数据表 cdb_forums ... 成功
建立数据表 cdb_medals ... 成功
建立数据表 cdb_memberfields ... 成功
Discuz! info: MySQL Query Error
Time: 2006-9-5 2:02pm
Script:
SQL: CREATE TABLE cdb_memberfields ( uid mediumint(8) unsigned NOT NULL default '0', nickname varchar(30) NOT NULL default '', site varchar(75) NOT NULL default '', alipay varchar(50) NOT NULL default '', icq varchar(12) NOT NULL default '', qq varchar(12) NOT NULL default '', varchar(40) NOT NULL default '', msn varchar(40) NOT NULL default '', taobao varchar(40) NOT NULL default '', location varchar(30) NOT NULL default '', customstatus varchar(30) NOT NULL default '', medals varchar(255) NOT NULL default '', avatar varchar(255) NOT NULL default '', avatarwidth tinyint(3) unsigned NOT NULL default '0', avatarheight tinyint(3) unsigned NOT NULL default '0', bio text NOT NULL, signature text NOT NULL, sightml text NOT NULL, ignorepm text NOT NULL, groupterms text NOT NULL, authstr varchar(20) NOT NULL default '', PRIMARY KEY (uid)) ENGINE=MYISAM DEFAULT CHARSET=utf8
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 'varchar(40) NOT NULL default '', msn varchar(40) NOT NULL default '', taobao v' at line 1
Errno.: 1064
这个错误相信很多人都遇到了,我也是,我在WWW。1500MB。COM提供的免费空间安装DISCUZ 5.0的UTF-8版本时遇到了这个错误。
找帖子没有找到,查找了半天资料,分析了错误提示,弄明白了错误在'varchar(40) NOT NULL default '', msn varchar(40) NOT NULL default '', taobao v' 附近。查找install文件夹下的discuz.sql文件,发现这句附近是
icq varchar(12) NOT NULL default '',
qq varchar(12) NOT NULL default '',
yahoo varchar(40) NOT NULL default '',
msn varchar(40) NOT NULL default '',
taobao varchar(40) NOT NULL default '',
location varchar(30) NOT NULL default '',
对比上面的错误提示吧,提示里这里是
icq varchar(12) NOT NULL default '',
qq varchar(12) NOT NULL default '',
varchar(40) NOT NULL default '',
msn varchar(40) NOT NULL default '',
taobao varchar(40) NOT NULL default '',
location varchar(30) NOT NULL default '',
看到了吗?这里第三行,应该有的字段名yahoo不见了,所以,当然,错误了。
初步估计是yahoo被屏蔽了或者怎么了,因此修改了yahoo,改为yaho,保存并重新上传discuz.sql,安装成功。
综上,解决办法,用记事本打开install文件夹下的discuz.sql。查找yahoo,将yahoo改为别的名字,如yaho。重新上传这个discuz.sql文件。
正常安装时此问题将不再出现。
总结:不知道是不是 yahoo 和谁有仇,还是yahoo属于注册商标被保护了;不知道是sql的问题还是网站的问题。总之,不要用这个yahoo当字段名了。改掉它!
希望大家多多交流,共同解决各种问题。:) |