GUID 列にクラスター化された主キーの作成を間違えました。定義された外部キーでそのテーブルを参照する多くのテーブルがあります。テーブルのサイズは重要ではありません。
外部キーや主キーの制約を手動で削除して再作成せずに、クラスター化されたものから非クラスター化されたものに変換したいと思います。
MS SQL2005 でそれを達成することは可能ですか?
はいの場合、そのオンライン(データベースのダウンタイムなし)を達成することは可能ですか?
GUID 列にクラスター化された主キーの作成を間違えました。定義された外部キーでそのテーブルを参照する多くのテーブルがあります。テーブルのサイズは重要ではありません。
外部キーや主キーの制約を手動で削除して再作成せずに、クラスター化されたものから非クラスター化されたものに変換したいと思います。
MS SQL2005 でそれを達成することは可能ですか?
はいの場合、そのオンライン(データベースのダウンタイムなし)を達成することは可能ですか?
最初に一意の非クラスター化NCインデックスを作成してから、クラスター化PKを削除してみてください。FKは、この他のインデックスを認識する必要があります(ただし、認識しない場合があります:試したことはありません)。
ALTER TABLEを実行してクラスター化されたPKをドロップする場合は、ONLINEオプションを使用します。ただし、Enterpriseエディションでのみ使用できます。
ALTER TABLE Mytable DROP CONSTRAINT PK_Mytable WITH (ONLINE = ON)
ADDCONSTRAINTビットにONLINEを使用することはできません。
基本的に、オプションは、ブロックしたり、最初に別のテーブルを作成してデータを移動したりすることなく制限されます...