Adding a new column sounds simple. In production, it can be dangerous. Schema changes touch raw data, indexes, and application logic. A single misstep can lock tables, stall writes, or break downstream services.
Plan the new column before you write a single SQL statement. Define its name, type, default value, and nullability with precision. Audit the queries that will hit it. Check ORMs, stored procedures, and background jobs. The name you choose will outlive most code in the repo, so get it right the first time.
In PostgreSQL, adding a new column with a DEFAULT on a big table is costly because it rewrites data. On MySQL, adding a column without AFTER defaults to the end, which can affect tools that rely on position. In SQL Server, computed columns can be persisted or virtual—choose based on performance and storage needs. Always test the operation on a clone of production data to measure time, locking, and I/O load.