创建非唯一索引时的唯一索引错误 - SQL Server

时间:2010-08-03 15:57:54

标签: sql sql-server sql-server-2005 tsql

我尝试和SQL Server 2005中的表表的非唯一索引。当我尝试创建它时,我收到以下错误。

  

Msg 1505,Level 16,State 1,Line 1   CREATE UNIQUE INDEX语句终止,因为找到了对象名称“dbo.oe_pick_ticket”和索引名称“idx_pick_ticket_popup_wmms”的重复键。重复键值为(1093066,N,N,N ,, FBF,100001,1074359,111893)。

我的创建声明如下:

CREATE NONCLUSTERED INDEX idx_pick_ticket_popup_wmms 
ON oe_pick_ticket (invoice_no, delete_flag, direct_shipment, auxiliary, oe_pick_ticket_type_cd, company_id, location_id, order_no)

我尝试过重建clustered / unique / primary key索引,但没有改变任何东西。有谁知道我为什么会收到这个错误以及如何解决它?

1 个答案:

答案 0 :(得分:4)

事实证明,我能够自己解决这个问题。我在桌子上运行了一个DBCC CHECKTABLE并且存在不一致。之后,我使用REBUILD_REPAIR选项再次运行它,它修复了主键不一致。