SQL数据库排序规则不匹配

时间:2012-11-28 21:49:39

标签: sql sql-server

我是SQL的新手,我正在尝试使用一个脚本查询两个单独的数据库。 但是,两个数据库都有不同的排序规则。我试图通过运行这样的脚本来强制更改排序规则:

use master
go
alter database database1
collate SQL_Latin1_General_CP1_CI_AS
go

这确实运行但是当我尝试运行此查询时它没有任何区别(即使两个数据库现在都在使用SQL_Latin1_General_CP1_CI_AS):

select [Manufacturer],[ModelNumber] from database1.dbo.CVStore_Products inner join database2.dbo.tProduct on [StoreProductCode]=[ModelNumber]

我做错了什么?因为我一直收到这个错误:

Msg 468, Level 16, State 9, Line 1
Cannot resolve the collation conflict between "SQL_Latin1_General_CP1_CI_AS" and "Latin1_General_CI_AS" in the equal to operation.

提前感谢您的帮助! :d

1 个答案:

答案 0 :(得分:0)

整理可能是一种痛苦。但是已经有很长一段时间了。 这是a post from Pinal Dave,可追溯到2007年 它有一些示例可以直接更正查询中的排序规则,也可以更改特定列的排序规则。

根据我的记忆,更改整个数据库的排序规则设置不会影响现有列 任何新列都将使用新设置。