PostgreSQL
 sql >> Datenbank >  >> RDS >> PostgreSQL

ALTER TABLE, um eine neue Spalte auf begrenztem Speicherplatz hinzuzufügen

PostgreSQL kann ADD COLUMN direkt ausführen wenn die Spalte kein DEFAULT hat und ist nullble.

Also:Verwenden Sie die gleiche Methode, die Sie verwenden würden, um es in einer Situation mit hoher Parallelität zu handhaben, aber ohne die Trigger, die Sie verwenden würden, um es mit Parallelität zu handhaben.

  • ALTER TABLE ... ADD COLUMN ... ohne DEFAULT oder NOT NULL
  • ALTER TABLE ... ALTER COLUMN ... DEFAULT ... um den DEFAULT hinzuzufügen falls vorhanden
  • UPDATE die Tabelle in Stapeln von Zeilen, um den Wert festzulegen. VACUUM die Tabelle zwischen jeder Charge. nicht Verwenden Sie VACUUM FULL . Jeder Batch muss eine neue, separate Transaktion sein, die vor dem VACUUM festgeschrieben wird .
  • Falls gewünscht, ALTER TABLE ... ALTER COLUMN ... NOT NULL nachdem alle Zeilen einen Wert haben