SQL Server Management Studio не позволяет мне добавлять индекс в таблицу

114

Когда я щелкаю правой кнопкой мыши папку индексов в таблице, пункт меню «Новый индекс» становится серым. Не понимаю почему. Я удалил все данные в таблице на всякий случай, обновил и перезапустил SSMS, но безуспешно. Я использую SQL Server 2012 Business Intelligence SP1 CTP.

пряжа
источник
26
Это происходит, если у вас уже есть открытая таблица в конструкторе - за исключением того, что вы говорите, что перезапустили SSMS. Вы вошли в Design Table после перезапуска?
Мартин Смит
Я подтвердил, что это все еще проблема в SQL Server 2014.
Кейт
@ Мартин Смит: Спасибо, у меня это сработало.
Бхавин Шах
Диаграмма базы данных с таблицей на ней также вызовет это. (поскольку это вид «таблицы дизайна»)
JDC

Ответы:

260

Решение: закройте конструкторы таблиц и схемы баз данных и повторите попытку. Если это не помогает, закройте все окна в Management Studio.

Причина: параметр «Новый индекс» отключается, когда таблица блокируется схемой в окне конструктора.

Кит
источник
15
Спасибо. Microsoft, пожалуйста, улучшите это. Очень неприятно видеть new indexсерое.
Валамас
1
да, вам нужно закрыть конструкторы таблиц, которые не имеют ничего общего с рассматриваемой таблицей. grr
Simon_Weaver
2
У меня была такая же проблема при попытке добавить «Включенные столбцы». Я только сейчас понял, что в течение многих лет (ровно Десятилетие) все, что мне нужно было сделать, это закрыть конструктор таблиц и щелкнуть правой кнопкой мыши указатель, чтобы выбрать «Свойства», чтобы добавить / отредактировать их ... Все эти годы потрачены впустую. написание собственных скриптов. лицо-ладонь Хочу вернуть молодость!
MikeTeeVee
Вау, это спасло мне день! +1
Аль Кепп
6

Это может быть проблема с правами или, возможно, вы отключились. Попробуйте использовать код для добавления индекса; которые могут решить вашу проблему или сообщить о более значимом исключении, с которым вам нужно работать:

create index ix_MyTable_Column1
on dbo.MyTable(Column1 asc)

http://msdn.microsoft.com/en-us/library/ms188783.aspx

ДжонЛБеван
источник
3

Закройте таблицу, если она открыта в дизайнере. Щелкните правой кнопкой мыши «Индексы» для таблицы и выберите «Восстановить все». Это исправит ...

MCS
источник
1

В моем случае это было представление, а не таблица, потому что представление не было создано с помощью привязки схемы. Я изменил его, используя привязку схемы, а затем я мог добавить индекс в представление. НТН.

ашилон
источник
1

Таблица не имеет кластеризованного первичного ключа, как того требует пространственный индекс. Перед созданием пространственного индекса убедитесь, что в таблице существует столбец первичного ключа.

lord5et
источник