Adding a new column sounds simple, but in production systems it can be one of the most dangerous schema changes you make. The wrong migration at the wrong time locks tables, blocks writes, and takes down services. The right approach adds capacity without downtime, keeping deployments fast and safe.
In SQL, ALTER TABLE ADD COLUMN is the most common operation. It can be instant on some engines with certain data types. It can also cause full table rewrites if defaults or constraints are applied. PostgreSQL handles nullable columns with default NULL instantly, but adding a column with a non-null default rewrites every row. MySQL has similar rules, but engine and version differences mean you must check documentation.
With large datasets, the strategy shifts. Break changes into two steps: first add a nullable new column without defaults; then backfill in batches; then add constraints. This avoids table locks and long transactions. Use feature flags to keep code and schema changes deployable in separate steps.