A-A+

解决SQL Server 2008排序规则冲突问题

2013年11月30日 经验分享 暂无评论 阅读 4,525 次

SQL Server
昨天遇见一个问题,报表查询报错:
无法解决 equal to 运算中"Chinese_PRC_CI_AS"和"SQL_Latin1_General_CP1_CI_AS"之间的排序规则冲突。
可以肯定报表软件功能是正常的,就最近数据库服务器系统重装了,所以SQL Server也重装了,所以基本判断是SQL Server的问题。
对比了正常生产系统和出现问题的生产系统的SQL Server服务器属性,发现出现问题的生产系统的SQL Server服务器排序规则是"SQL_Latin1_General_CP1_CI_AS",而正常的是"Chinese_PRC_CI_AS"。
查看master系统数据库属性,也出现上面的问题。

解决办法:
通过Google和百度,查阅了不少解决方案。
发现就http://www.cnblogs.com/panchunting/p/SQLServer_Issue_Collation.html这篇文章提供的方法最全面。
但经过我试验,重建master数据库的方法不可行。
所以解决SQL Server 2008 R2排序规则冲突问题的根本方法,只有一个:卸载或重装SQL Server实例。

注意:
1、重装前先更改操作系统的区域语言中相关设置都设置为中文,然后卸载并重装SQL Server;
2、也可以不更改区域语言设置,但在安装SQL Server的时候,到“排序规则设置”界面时,必须手工指定排序规则为Chinese_PRC_CI_AS。

希望遇见此问题的朋友,不要再走弯路。

author avatar

给我留言

icon_question icon_razz icon_sad icon_evil icon_exclaim icon_smile icon_redface icon_biggrin icon_surprised icon_eek icon_confused icon_cool icon_lol icon_mad icon_twisted icon_rolleyes icon_wink icon_idea icon_arrow icon_neutral icon_cry icon_mrgreen

Copyright © 2009 - 2018 一米居 | All Rights Reserved | Powered By WordPress | Theme Designed By 知更鸟 | 赣ICP备09003747号-2

用户登录

分享到: