一尘不染

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

sql

我尝试对SQL Server 2005中的表表进行非唯一索引。尝试创建表时遇到以下错误。

消息1505,级别16,状态1,第1行第1条CREATE UNIQUE INDEX语句终止,因为找到了对象名“
dbo.oe_pick_ticket”和索引名“
idx_pick_ticket_popup_wmms”的重复键。重复的键值为(1093066,N,N,N 、、
FBF,100001、1074359、1118930)。

我的create语句如下:

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)

我尝试过重建集群/唯一/主键索引,但没有任何改变。有谁知道我为什么收到此错误以及如何解决它?


阅读 201

收藏
2021-05-16

共1个答案

一尘不染

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

2021-05-16