如何有存储过程在两个不同排序规则的数据库中进行数据的联查

我在两个服务器上安装了SQL Server 2000,但排规则不同,server1是大小写无关的,server2是大小写相关的,我在server1中加入了server2的过程登录链接,并在server1的一个存储过程中的一个循环中写了如下一段内容:
......
select field1,field2 ... from tb1 where field1 in (select field1 from server2.dbo.tb2 where ...)
......
其中field1为varchar类型,
上述过程在两个排序规则相同的数据库中是没问题的,但在上述的两个服务器中却没办法创建,SQL报出:“执行equal to 规则不一致” 的错误。
请问各位高手,有没有其他变通的方法?

---------------------------------------------------------------

用collate 子句,比如:
select field1,field2 ... from tb1
where field1 collate Chinese_PRC_CS_AS
in (select field1 from server2.dbo.tb2 where ...)

Published At
Categories with 数据库类
Tagged with
comments powered by Disqus