无法解决替换操作的排序规则冲突

时间:2015-02-20 16:06:02

标签: sql-server sql-server-2008 tsql sql-server-2000

我正在将一些数据库从SQL Server 2000迁移到SQL Server 2008。

我还有一个数据库需要移动。我已将其复制到2008年进行测试。

但是当我尝试将此查询从2008客户端运行回2000数据库时,我收到以下排序规则错误

SELECT * 
FROM Ports.dbo.vwAppeals

给出

  

Msg 446,Level 16,State 8,Line 1   无法解决替换操作的排序规则冲突。

如果我运行相同的查询 - 从2008客户端到2008服务器,即在已迁移的副本上 - 它会返回预期的数据而不会出错。

它比我想象的慢一点。

vwAppeals对象是一个视图,我检查了每个基础表上每个字段的排序规则,但没有找到除< database default>之外的任何内容。在SQL Server 2000企业管理器中。当我使用此

签入2008副本上的SQL Server Management Studio时
SELECT
    col.name, col.id, col.xtype, col.collation 
FROM 
    Ports.dbo.syscolumns col
WHERE 
    id IN (SELECT [id]
           FROM [Ports].[dbo].[sysobjects]
           WHERE name = '<name_of_underlying_table>') 
    AND collation IS NOT NULL 

所有归类都是相同的

知道可能导致此错误的原因是什么?

1 个答案:

答案 0 :(得分:0)

您确定没有可能影响此功能的潜在功能吗?您是否可以逐步重建视图以进行故障排除并确定冲突的来源?