Сбой раздела ALTER TABLE SWITCH в SQL Server 2008 - PullRequest
0 голосов
/ 21 апреля 2010

У меня есть промежуточный стол (stage_enrolments) и производственный стол (enrollments).Промежуточный стол не разделен, производственный стол -.Я пытаюсь использовать оператор ALTER TABLE SWITCH, чтобы перенести записи в промежуточной таблице в рабочий.

ALTER TABLE dbo.stage_enrolments SWITCH TO dbo.enrolments PARTITION @partition_num;

Однако,когда я выполняю эту инструкцию, я получаю следующую ошибку:

Ошибка инструкции ALTER TABLE SWITCH.На целевую таблицу Academic.dbo.enrolments ссылаются 1 проиндексированных представлений, а на исходную таблицу Academic.dbo.stage_enrolments ссылаются только 0 совпадающих индексированных представлений

У меня то же самоеиндексированное представление, определенное для dbo.stage_enrolments, как и для dbo.enrolments, хотя представление для регистрации разделено на части.Я попытался воссоздать представления и их индексы, проверяя, что все параметры одинаковы, но я получаю одинаковый результат.Если я удаляю индекс из представления dbo.enrolments, то он работает нормально.

Он работает с другим набором таблиц, имеющих индексированные представления, поэтому я не уверен, почему он не работает для них.У кого-нибудь есть идея относительно того, почему это может происходить?Что еще я должен проверить?

1 Ответ

0 голосов
/ 21 апреля 2010

Теперь проблема решена. Я снова создал индексированное представление, и теперь оно работает. На самом деле я не изменил ничего, кроме имени индекса, поэтому не уверен, в чем проблема.

...