"Chinese_PRC_CI_AS" 和 "Chinese_PRC_CI_AI" 之间的排序规则冲突

zgp007 2008-11-12 08:58:26
单位使用的是英文版的操作系统WIN2003,然后在区域与语言中切到中文,再安装SQL2005,安装第三方程序,但是在第三方程序中有错误提示: "Chinese_PRC_CI_AS" 和 "Chinese_PRC_CI_AI" 之间的排序规则冲突,请高手给解决一下!
...全文
603 19 打赏 收藏 转发到动态 举报
写回复
用AI写文章
19 条回复
切换为时间正序
请发表友善的回复…
发表回复
nzperfect 2008-11-12
  • 打赏
  • 举报
回复
在写sql语句时加上COLLATE吧.
等不到来世 2008-11-12
  • 打赏
  • 举报
回复
--更改指定列的collation
ALTER TABLE myTable ALTER COLUMN mycol NVARCHAR(10) COLLATE Chinese_PRC_CI_AI
zgp007 2008-11-12
  • 打赏
  • 举报
回复
谢谢大家,我看到了,我也试过11楼的兄弟的方法了,正如13到16楼这几位兄弟讲的,改了也是没有用的!
不过还是要谢谢大家,明白了很多事!我重新SQL后,回来结贴!
fcuandy 2008-11-12
  • 打赏
  • 举报
回复
当建表时未指定列排序规则,则以库排序规则为准。
更改库规则时,表中列上规则不会更改。
显式再更改列的排序规则时,表中当前新规则含有的相应字符编码,则数据不改变,当已存在的数据中含有当前规则中不支持的编码时,数据会改变,以?代替。
dobear_0922 2008-11-12
  • 打赏
  • 举报
回复
[Quote=引用 13 楼 fcuandy 的回复:]
可以改。11楼已写了。
[/Quote]

那个改的只是默认排序规则,对于已存在的表,不起任何作用。
dobear_0922 2008-11-12
  • 打赏
  • 举报
回复
[Quote=引用 12 楼 zgp007 的回复:]
还有,就是,如果不重新安装SQL2005的情况下,能否进行修改?
[/Quote]

不需要重新安装,更改数据库的排序规则也没用,你得更改具体的字段的排序规则:找出你查询用到的表,修改字符类型字段的排序规则。
fcuandy 2008-11-12
  • 打赏
  • 举报
回复
可以改。11楼已写了。
zgp007 2008-11-12
  • 打赏
  • 举报
回复
还有,就是,如果不重新安装SQL2005的情况下,能否进行修改?
等不到来世 2008-11-12
  • 打赏
  • 举报
回复
"Chinese_PRC_CI_AS" 和 "Chinese_PRC_CI_AI"都是中文集,但规则不同,因此会出错。
解决方法:
1.更改第三方collation?
2.查询时指定与第三方一致的collation
3.更改数据库collation:
--查sql的collation
select serverproperty('collation')
--假如是如下结果
/*
Chinese_PRC_CI_AS
*/
--更改sql指定库的collation,使之与第三方collation一致
alter database databaseName collate Chinese_PRC_CI_AI

--查看更改结果
select databasepropertyex('databaseName','collation')
zgp007 2008-11-12
  • 打赏
  • 举报
回复
谢谢四楼与七楼的,我在数据库安装的时候就已经选择了CHINESE_PRC了,但是查询还会有问题,我就搞不清是怎么回事了!
fcuandy 2008-11-12
  • 打赏
  • 举报
回复
sql2005库与第三方程序里指定的排序规则不一致。

现在你不知道第三方程序里是什么规则,那么看下sql2005库的,改一下试试。
zgp007 2008-11-12
  • 打赏
  • 举报
回复
对不起,是我没有说情况,第三方程序其它地方都没有,只是在使用查询的时候提示出错!而且还是部分报表出问题!
昵称被占用了 2008-11-12
  • 打赏
  • 举报
回复
你需要在安装的时候选择和第三方程序使用的一样的排序规则
昵称被占用了 2008-11-12
  • 打赏
  • 举报
回复
你冲突的两个排序规则都是中文的

viva369 2008-11-12
  • 打赏
  • 举报
回复
http://topic.csdn.net/u/20080522/00/a3aa3abb-e834-4e3a-ad83-439c5e02dca4.html
viva369 2008-11-12
  • 打赏
  • 举报
回复
看错了,

安装第三方程序,但是在第三方程序中有错误提示
安装的时候报错了?
还是在查询的时候?
zgp007 2008-11-12
  • 打赏
  • 举报
回复
楼上的,我还是没有看明白呀!所以清指点的细一些,谢谢,对了,SQL2005数据库上只有一个数据库,不是跨库查询出的问题!
viva369 2008-11-12
  • 打赏
  • 举报
回复
where a=a collate Chinese_PRC_CI_AS
hyde100 2008-11-12
  • 打赏
  • 举报
回复
关注~

22,209

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 疑难问题
社区管理员
  • 疑难问题社区
  • 尘觉
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧