SQL Server Management Studio nie pozwala mi dodać indeksu do tabeli

114

Kiedy klikam prawym przyciskiem myszy folder indeksów w tabeli, pozycja menu „Nowy indeks” jest wyszarzona. Nie rozumiem dlaczego. Usunąłem wszystkie dane z tabeli na wszelki wypadek i odświeżyłem i ponownie uruchomiłem SSMS, ale bez powodzenia. Używam SQL Server 2012 Business Intelligence SP1 CTP.

yarning
źródło
26
Dzieje się tak, jeśli masz już otwartą tabelę w projektancie - z wyjątkiem tego, że powiesz, że ponownie uruchomiłeś SSMS. Czy przeszedłeś do Design Table po ponownym uruchomieniu?
Martin Smith
Potwierdziłem, że jest to nadal problem w SQL Server 2014.
Keith
@ Martin Smith: Dzięki, to zadziałało dla mnie.
Bhavin Shah,
Spowoduje to również diagram bazy danych z tabelą. (ponieważ jest to widok „tabeli projektów”)
JDC

Odpowiedzi:

260

Rozwiązanie: zamknij projektantów tabel i diagramy bazy danych i spróbuj ponownie. Jeśli to nie pomoże, zamknij wszystkie okna w Management Studio.

Przyczyna: Opcja „Nowy indeks” zostaje wyłączona, gdy tabela jest blokowana według schematu przez okno projektanta.

Keith
źródło
15
Dzięki. Microsoft, popraw to. To bardzo irytujące, gdy widzisz ten new indexkolor na szaro.
Valamas
1
tak, musisz zamknąć projektantów stołów, którzy nie mają nic wspólnego z danym stołem. grr
Simon_Weaver
2
Miałem ten sam problem podczas próby dodania „Uwzględnionych kolumn”. Właśnie teraz zdałem sobie sprawę, że przez lata (dokładnie dekadę) wszystko, co musiałem zrobić, to zamknąć Projektanta tabel i kliknąć prawym przyciskiem myszy Indeks, aby wybrać "Właściwości", aby je dodać / edytować ... Wszystkie te lata zmarnowane na pisanie własnych skryptów. dłoń twarzy Chcę odzyskać młodość!
MikeTeeVee
Wow, to uratowało mi dzień! +1
Al Kepp
6

Może to być problem z prawami, a może straciłeś połączenie. Spróbuj użyć kodu, aby dodać indeks; które mogą rozwiązać Twój problem lub zgłosić bardziej znaczący wyjątek do pracy z:

create index ix_MyTable_Column1
on dbo.MyTable(Column1 asc)

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

JohnLBevan
źródło
3

Zamknij tabelę, jeśli jest otwarta w projektancie. Kliknij prawym przyciskiem myszy Indeksy tabeli i wybierz Przebuduj wszystko. To naprawi to ...

MCS
źródło
1

W moim przypadku, który był widokiem, a nie tabelą, było tak, ponieważ widok nie został utworzony za pomocą powiązania schematu. Zmieniłem to za pomocą Schema Binding, a następnie mogłem dodać indeks do widoku. HTH.

Ashilon
źródło
1

Tabela nie ma klastrowego klucza podstawowego wymaganego przez indeks przestrzenny. Przed utworzeniem indeksu przestrzennego upewnij się, że kolumna klucza podstawowego istnieje w tabeli.

lord5et
źródło