PostgreSQL có thể thực hiện ADD COLUMN tại chỗ nếu cột không có DEFAULT và không có giá trị.
Vì vậy:Hãy sử dụng cùng một phương pháp bạn sử dụng để xử lý nó trong tình huống đồng thời cao, nhưng không có trình kích hoạt mà bạn sẽ sử dụng để xử lý nó với tình huống đồng thời.
-
ALTER TABLE ... ADD COLUMN ...không cóDEFAULTnào hoặcNOT NULL -
ALTER TABLE ... ALTER COLUMN ... DEFAULT ...để thêmDEFAULTnếu có -
UPDATEbảng theo lô hàng để đặt giá trị.VACUUMbảng giữa mỗi đợt. Đ ừng sử dụngVACUUM FULL. Mỗi lô phải là một giao dịch mới, riêng biệt được cam kết trướcVACUUM. - Nếu muốn,
ALTER TABLE ... ALTER COLUMN ... NOT NULLsau khi tất cả các hàng có một bộ giá trị