Почему мои индексы удаляются при изменении схемы представления Index'D?

сервер: MS Sql Server 2008

когда я создаю индексированное представление .. и затем я изменяю схему представления, индекс все отбрасывается.

Это так раздражает!

может кто-нибудь объяснить, почему это? Сначала я подумал, что это может быть потому, что поля, требуемые индексом, больше не находятся в схеме (мы просто изменили ее, верно?) .... но для всех случаев, когда поля индекса находятся в схеме представления ... он должен просто оставить индекс там.

в любом случае.. рант рант рант ...

просто надеюсь, что кто-то может иметь некоторые внутренние знания об этом.

1 ответов


поведение по дизайну. Из Книг Онлайн:

ALTER VIEW может применяться для индексирования вид, однако, изменить вид безоговорочно сбрасывает все индексы на вид.

при изменении схемы кластеризованный индекс необходимо будет перестроить. Поскольку все некластеризованные индексы полагаются на кластеризованный индекс, их необходимо перестроить. Вероятно, поэтому все индексы отбрасываются.