Обычно в SQL Server, выполнив следующим будет в порядке:Как я могу recluster таблицы размещенную в SQL Azure
ALTER TABLE dbo.ChangeLog DROP CONSTRAINT PK_ChangeLog
ALTER TABLE dbo.ChangeLog ADD CONSTRAINT PK_ChangeLog PRIMARY KEY NONCLUSTERED (ChangeLogID)
CREATE CLUSTERED INDEX IX_ChangeLog_FTRequestID ON dbo.ChangeLog (FTRequestID);
Однако при попытке запустить его с базой данных, размещенных на Azure, я получаю следующее ошибка:
Tables without a clustered index are not supported in this version of SQL Server. Please create a clustered index and try again.
Очевидно, что если я пытаюсь создать второй кластерный индекс первого, я получаю эту ошибку вместо того, чтобы:
Cannot create more than one clustered index on table 'dbo.ChangeLog'. Drop the existing clustered index 'PK_ChangeLog' before creating another
Это кажется уловкой 22.
Есть ли способ обойти это, не отбрасывая и не воссоздавая всю таблицу?
Хорошо. Я попробую это, когда вернусь домой. – emragins
Работал отлично, как только я обновился. Ссылка «Как обновить» была действительно похоронена: http://azure.microsoft.com/en-us/documentation/articles/sql-database-preview-upgrade/ – emragins