添加NOT NULL带有DEFAULT值的列时- PostgreSQL 是否优化此操作?
NOT NULL
DEFAULT
如果表有 n 行,未优化的 alter-table-add-column 将产生 n 次写入默认值 - 显然,这可能非常痛苦。通过优化,数据库将立即创建新列,仅存储默认值的一个副本,当在合适的索引数据结构中找不到该列的非默认值时,该副本将返回。
例如Oracle 11g 就有这样的优化。
postgresql optimization alter-table ddl
alter-table ×1
ddl ×1
optimization ×1
postgresql ×1