Почему мои индексы сбрасываются при изменении схемы представления индекса?
Сервер: MS Sql Server 2008
Когда я создаю индексированное представление... и затем меняю схему представления, все индексы удаляются.
Это так раздражает!
Может кто-нибудь объяснить, почему это так? Сначала я подумал, что это может быть потому, что поля, которые требует индекс, больше не находятся в схеме (мы только что изменили это, верно?) .... но во всех случаях, когда поля индекса находятся в схеме представления... он должен просто оставить индекс там.
в любом случае.. напыщенная напыщенная напыщенная речь...
просто надеясь, что кто-то может иметь некоторые внутренние знания по этому вопросу.
1 ответ
Поведение - это дизайн. Из книг онлайн:
ALTER VIEW может применяться к индексированным представлениям; однако ALTER VIEW безоговорочно удаляет все индексы в представлении.
При изменении схемы кластерный индекс должен быть перестроен. Поскольку все некластеризованные индексы зависят от кластеризованного индекса, их необходимо перестраивать. Наверное, поэтому все индексы сброшены.