In databases, adding a new column is a small change with big consequences. It can alter query performance. It can reshape the data model. Done well, it unlocks new features. Done poorly, it adds technical debt.
A new column means thinking about its type, default values, nullability, and indexing strategy. It’s not just ALTER TABLE users ADD COLUMN age INT. That command writes to disk. On large datasets, the wrong choice will block writes, lock reads, and cause downtime.
When PostgreSQL adds a column with a default value, it rewrites the whole table—unless you use a computed default, which avoids costly I/O. MySQL behaves differently: adding a column is often fast, but indexing it later can be expensive. Column order affects storage layout in some engines, so placing it correctly avoids wasted space.