Как изменить первичный ключ, чтобы он не был кластеризован? - PullRequest
30 голосов
/ 09 апреля 2010

Неполный рабочий день DBA здесь. Я хочу изменить существующий индекс первичного ключа с кластеризованного на некластеризованный. И синтаксис ускользает от меня.

Вот как это сейчас прописано.

ALTER TABLE [dbo].[Config] WITH NOCHECK ADD 
    CONSTRAINT [PK_Config] PRIMARY KEY  CLUSTERED 
    (
        [ConfigID]
    )  ON [PRIMARY] 

Я не вижу оператора ALTER CONSTRAINT в онлайн-документах.

1 Ответ

63 голосов
/ 09 апреля 2010

Удалите кластеризованный индекс, а затем заново создайте первичный ключ как некластеризованный:

ALTER TABLE dbo.Config DROP CONSTRAINT PK_Config
go
ALTER TABLE dbo.Config ADD CONSTRAINT PK_Config 
    PRIMARY KEY NONCLUSTERED (ConfigID)
...