wangsisi 发表于 2011-8-6 16:50:48

mediawiki提交页面时出现MySQL 1271错误

我写wiki时,是写一段,预览,保存,然后继续。可是写完了一段话时
===一文多名处理===
有时一篇文章可能具有多个不同标题,例如[[中央处理器]]与[]。如果您希望将“中央处理器”的访问转到“CPU”页面,可以在“中央处理器”的正文中顶头输入:
'''#REDIRECT []'''
这称为[]的“页面重定向”功能。更多细节请阅读'''[]'''。
===禁止文字转换===
mediawiki义,以控制显示格式。当需要原样显示会被系统转换掉的文本时(如双中括号等),应在歧义文本的两端分别加上'''<nowiki>'''和'''</nowiki>'''标记(请以半角符号输入),系统将不再转换中间的内容。
对于需要原样引用的多行文字,则可以采用在每行之前增加空格的办法来实现。(注:少数时候此法不能完全禁止转换,此时应采用前面的标记方法)
===目录控制===
当文章中含有3个以上标题时,mediawiki将自动在第一个标题之前生成目录(这是默认的设置)。
*如果需要隐去目录,可以在文章中加入“'''__NOTOC__'''”标记;
*如果需要强制显示目录而不管标题数量,可以加入“'''__TOC__'''”标记;
这两个wiki标记不限制出现位置,但一般出现在文章头部或尾部且单独成行。
===文章分类===
在文本中嵌入“'''[]'''”的文字,会使本文自动归类到“文章分类”下面。一般习惯在文章末尾放置该语句;同一篇文章可以设定多个分类。
编辑完成后,点击正文页面下端的分类名称,可以进入该分类页面查看更多的同类文章。同时,分类页面中也可以进行编辑,以进行必要的说明。
更详细的说明参见'''[]'''。
预览时,提示:
Database error
A database query syntax error has occurred. This may indicate a bug in the software. The last attempted database query was:
(SQL query hidden)
from within function "Parser::replaceLinkHolders". MySQL returned error "1271: Illegal mix of collations for operation ' IN ' (localhost)".
查过MySQL的1271错误的含义,没什么帮助。
错误:1271 SQLSTATE: HY000 (ER_CANT_AGGREGATE_NCOLLATIONS)
消息:对于操作'%s',非法混合了校对。
后来根据wiki建站技术群2里 *MBALib.com和京allwiki冷玉!的帮助把出错的页面删除了,我主要担心有这样的页面存在,以后备份导入数据库可能会存在隐患。
学习到的东西:
$wgShowSQLErrors=true ;
把这个选项加入LocalSetting.php,访问出错页面时,可以显示出错的SQL语句。
由于访问出错页面时,除了数据库错误,什么编辑、删除等功能都没有显示。怎么删除呢?
http://www.yoursite.com/index.php?title=******&action=delete
例如出错的页面title是IT:newbie,那么只要在浏览器里输入:
http://www.yoursite.com/index.php?title=IT:newbie&action=delete
就ok了

傲视之道 发表于 2011-8-16 08:45:43

请楼主继续发好贴,支持你











static/image/common/sigline.gif

http://img2081.poco.cn/mypoco/myphoto/20110719/00/6035253720110719001802061.png
页: [1]
查看完整版本: mediawiki提交页面时出现MySQL 1271错误

美国HostEase虚拟主机一年198元