sql >> Database teknologi >  >> RDS >> Sqlserver

Skift en primær nøgle fra ikke-klynget til klynget

1) Slip det eksisterende klyngede indeks først (IX_TableX_FieldB):

   DROP INDEX TableX.IX_TableX_FieldB

2) Opret en (midlertidig) UNIK begrænsning på de unikke felter, der refereres til i den primære nøgle

    ALTER TABLE TableX
    ADD CONSTRAINT UQ_TableX UNIQUE(FieldA)

3) Slip den PRIMÆRE NØGLE

    ALTER TABLE TableX
    DROP CONSTRAINT PK_TableX

4) Genskab den PRIMÆRE NØGLE som KLUSTERET

   ALTER TABLE TableX
   ADD CONSTRAINT PK_TableX PRIMARY KEY CLUSTERED(FieldA)

5) Slip den midlertidige UNIQUE begrænsning

   ALTER TABLE TableX
   DROP CONSTRAINT UQ_TableX

6) Tilføj IX_TableX_FieldB igen som IKKE-KLUSTERET

   CREATE NONCLUSTERED INDEX IX_TableX_FieldB ON TableX(FieldB)


  1. Logning af output af eksternt program med (wx)python

  2. Hvad er et kvalitetsudviklingsmiljø til at skrive Oracle SQL?

  3. ORA-00955-navnet bruges allerede af et eksisterende objekt

  4. Node.js mysql transaktion