Manyou诚邀开发者加盟 | 常见问题
《站长》俱乐部官方群公布 城市联络员机会多多
立即免费下载 Discuz!7.0.0 正式版
安装升级指南 | 用户手册 | 新手建站学堂
基于.net架构的Discuz!NT2.6正式版发布
Comsenz公司2009年招贤纳士,期待您的加盟
Discuz!收费服务内容及价格
7月重庆、成都、西安三地社区运营实战特训速报名
Discuz!/UCHome 专用官方虚拟主机
牧场新服一起联运:豆浆机免费带回家
基于Discuz!的免费论坛空间5D6D
康盛创想《站长》俱乐部18城市互动之旅报名ing
返回列表 回复 发帖

数据错误1267分析和解决方案(带图示)。申请加精!!

文章出处:http://www.googyo.com/viewthread.php?tid=74&extra=page%3D1
作者:谷优(laimingzhen)
日期:2006.10.3
目的:解决此问题也属偶然,只是帮网友解决他们遇到的问题。
文章等级:菜鸟级

问题原帖地址:http://www.discuz.net/viewthread.php?tid=226503&extra=&page=1

在官方论坛有相类似的问题,最早是1月21日showlife发的,但没解决方案,所以可见并不是一个人遇到这样的问题,也不知道showlife最后是不是重装论坛解决,呵呵^_^ 所以下决心把这问题解决并将分析过程和解决方案写出来,希望能让大家借鉴一下,高手的话就看到这里就可以干您的事了,技术含量也不高,请勿见笑。

好了。废话不说了,正式开始,首先我们看一下错误提示:

showlife遇到的错误提示:

Discuz! info: MySQL Query Error

User: Мг.$℃
Time: 2006-1-21 3:38pm
Script: /post.php

SQL: select count(*) FROM cdb_postban where (fid='4' or fid='65535')

AND username='Мг.$℃' AND timelimit > 1137829088
Error: Illegal mix of collations (latin1_swedish_ci,IMPLICIT) and (gbk_chinese_ci,COERCIBLE) for operation '='
Errno.: 1267

Similar error report has beed dispatched to administrator before.
febay遇到的错误提示:

Discuz! info: MySQL Query Error

User: 超级女生
Time: 2006-10-2 1:14pm
Script: /post.php

SQL: select count(*) FROM cdb_postban where (fid='11' or fid='65535')

AND username='超级女生' AND timelimit > 1159766042
Error: Illegal mix of collations (latin1_swedish_ci,IMPLICIT) and (gbk_chinese_ci,COERCIBLE) for operation '='
Errno.: 1267

Similar error report has beed dispatched to administrator before.


分析思路:
因为本人对数据数也是刚开始接触,错误解决的方法也知之甚少(在这里要先感谢一下febay对我的信任与给了机会让我思考学习),所以我最先做的一件事情是从字面上去理解出错的原因是什么,照原文意译过来是



  1. SQL:选择点来自cdb_postban表里的(fid='4' or fid='65535')
  2. 用户名为'Мг.$℃'和时间限定1137829088
  3. 错误:不合法的混合在校对(latin1_swedish_ci,IMPLICIT) 和(gbk_chinese_ci,COERCIBLE)对'='的*作(不知道译得对不对,反正意思是这样的)
复制代码

大家注意到红色和蓝色的部分了吧,这是user等出错字段的字符集。所以出错信息已经在这里告诉我们到底是出错了,该调整什么。另外,看到绿色代码部份,那个就等于告诉我们出问题的是表名为cdb_postban的表。所以接下来我们开始行动了:
首先登录phpMyAdmin,打开当前出错的数据库,选择出错的数据表,打开后会出现如下图

p2.jpg
2006-10-3 19:56


注意到整理那一列,有3项字符集是:latin1_swedish_ci。这也就是出错的地方,可能这里会问了,为什么错的是这里,其实数据错误1267指的是安装插件的时候出的错,插件加入数据库的字符集和默认的不一样。中文的话一般默认为GB2312。所以我们要手动把它改正过来(也可以用SQL语句实现这里就不说了)点下图红色标记


p3.jpg
2006-10-3 19:56


出现如下界面:


p4.jpg
2006-10-3 19:56



把“整理”那一项选为“gbk_chinese_ci”(简体中文,不区分大小写),确定。
修改完成后如下图


p5.jpg
2006-10-3 19:56




登出试验再发帖,成功。




经验总结:
1、遇到问题先从错误提示获得最基础信息来分析。
2、充分利用网络资源:
1)在技术类网站发帖求助(如谷优社区);
2)在搜索引擎搜索相关错误代码的信息;
3、善于动手、动脑、动口
4、*作数据库必须要求具备基础的知识,建议*作前先暂时关闭论坛并备份数据库。




[ 本帖最后由 agfx 于 2006-10-3 20:05 编辑 ]
善用搜索那将是你一笔难得的财富。别人所给你的每一个答案,都请虚心对待。
请学会独立思考独立操作。有问题请尽量发帖请勿PM。请勿询问QQ,有必要的话我会主动要你的联系方式。
晕死。连官方的 [attach][/attach] 代码都不能用。

看起来麻烦的就到点文章出处链接移步谷优社区。

记得顶起来!!
善用搜索那将是你一笔难得的财富。别人所给你的每一个答案,都请虚心对待。
请学会独立思考独立操作。有问题请尽量发帖请勿PM。请勿询问QQ,有必要的话我会主动要你的联系方式。
嘿嘿~~支持下~~!
我帮您编辑看看....
搞定.....
全部备份 标准备份 到底有什么区别?
嘿嘿。谢谢!!

随便BS一下爬爬,又来灌水。
善用搜索那将是你一笔难得的财富。别人所给你的每一个答案,都请虚心对待。
请学会独立思考独立操作。有问题请尽量发帖请勿PM。请勿询问QQ,有必要的话我会主动要你的联系方式。
班主太冲动了
我发过类似的帖子解决此问题的。。。
很多人付出的很多.却得不到等量的收获.唉.这世道。
不是奖励你积分威望 -4 了么
好东西我顶!

.
返回列表