创建索引时出现错误“找不到名为[IX_MyIndex]的索引”

时间:2019-02-13 08:52:31

标签: sql-server

我来过这个很奇怪的错误:   消息7999,第16级,状态9,第12行   找不到表'dbo.MyTable'的任何名为'IX_MyIndex'的索引。 运行脚本时创建它! 创建非索引索引[IX_MyIndex] 开启[dbo]。[MyTable] ([Field1],[Field2]) 包含(字段3,字段4,字段5) WITH(MAXDOP = 4,DATA_COMPRESSION = PAGE,DROP_EXISTING = ON) 我想念什么?

2 个答案:

答案 0 :(得分:1)

尝试删除并执行最后一行。

CREATE NONCLUSTERED INDEX [IX_MyIndex] 
ON [dbo].[MyTable] 
([Field1],[Field2]) 
INCLUDE (Fields3, Fields4, Fields5)

它正在尝试搜索名称为IX_MyIndex的索引,该名称不可用。但是在创建名称IX_MyIndex的索引后,您可以运行相同的查询。

答案 1 :(得分:0)

借助Suraj的答案,我发现问题出在以下方面:

DROP_EXISTING=ON

它不像我所怀疑的那样工作(删除存在的索引IF),而是试图找到它并将其删除!

删除它就可以了!