我已将我们的一个数据库 (DB1) 从 SQL Server 2008 移动到 2012,当我运行存储过程时出现以下错误
无法解决等于操作中“SQL_Latin1_General_CP1_CI_AS”和“Latin1_General_CI_AS”之间的排序规则冲突
我使用更改了数据库的排序规则
ALTER DATABASE [optimiser] SET SINGLE_USER WITH ROLLBACK IMMEDIATE
ALTER DATABASE [optimiser] COLLATE SQL_Latin1_General_CP1_CI_AS
ALTER DATABASE [optimiser] SET MULTI_USER
但是每当存储过程运行时,我仍然会收到错误消息。我相信是因为 SP 正在使用连接到另一个数据库(GE 的 ihistorian)并且它的排序规则不匹配。无论如何都可以解决这个问题。
在旧服务器上 DB1 设置为Latin1_General_CI_AS
,这工作正常。数据库的新位置默认为SQL_Latin1_General_CP1_CI_AS
. 是否值得将新服务器上的排序规则 n DB1 改回Latin1_General_CI_AS
??