Hinzufügen von Spalten mit default-Wert zu große Tabelle

Ich habe eine Tabelle mit 40mil records. Ich muss hinzufügen eines neuen INT not NULL-Spalte der Tabelle, mit Standardwert = 0

Beim hinzufügen dieser Spalte, und verwenden Sie die folgenden:

ALTER TABLE myTable ADD NewColumnID int NOT NULL CONSTRAINT DF_Constraint DEFAULT 0

Er stellt die NewColumnID 0 für alle Datensätze. Beim ausführen dieser Abfrage auf unserer prod Tabelle, die 40mil records, wird das lange dauern? Weil ich weiß, tun die folgende SEHR LANGE dauert:

UPDATE myTable SET NewColumnID = 0
  • Und Ihre Frage ist ?
  • Es ist lang und es scheint normal.
  • Sie könnte... das hinzufügen der Spalte 'NULL', und aktualisieren Sie dann die Tabelle noch ein wenig in einer Zeit
  • Wie kann Sie nicht wissen, ob das hinzufügen der Feld dauert eine lange Zeit, wenn Sie wissen aktualisieren es funktioniert?
InformationsquelleAutor FaNIX | 2013-11-19
Schreibe einen Kommentar