Adding a new column is not just about changing a schema. It changes the shape of your data, the queries you write, and how your systems scale. In modern applications, schema migrations must be fast, safe, and predictable. Done wrong, they can lock tables, block writes, and cause outages. Done right, they can ship to production without a hiccup.
A new column in SQL is simple in code:
ALTER TABLE users ADD COLUMN last_login TIMESTAMP;
The complexity comes in production at scale. Consider the size of the table, the constraints, default values, and index requirements. In PostgreSQL, adding a nullable column without a default is instant. Adding a column with a default forces a table rewrite. In MySQL, the impact depends on the storage engine and version.