Creating a new column is more than a schema tweak. It changes the shape of your data. It changes the way queries move. Done right, it’s clean and fast. Done wrong, it locks tables, wrecks performance, and blocks deploys.
A new column in SQL adds storage for a fresh data attribute. You can define its type, its default, and whether it can be null. In MySQL, you might write:
ALTER TABLE users ADD COLUMN last_login TIMESTAMP NULL;
In PostgreSQL, the syntax is almost the same. But under heavy loads, adding a column with a default value can rewrite the whole table. To avoid downtime, break the change into steps: first add the column as nullable, then backfill in small batches. After backfill, set the default and constraints.