The schema was perfect until you noticed the missing field. You need a new column, and you need it without breaking production.
Adding a new column to a database table should be fast, safe, and predictable. Whether working with PostgreSQL, MySQL, or any modern relational engine, the steps are the same: plan the change, apply it in a controlled way, and keep downtime near zero.
First, define the column with clear data types and constraints. Avoid defaults that cause full table rewrites unless necessary. For example, in PostgreSQL:
ALTER TABLE orders ADD COLUMN delivery_date DATE;
This runs instantly because new rows can store a NULL without touching existing data. If you must set a default, consider doing it in two steps: create the column, then backfill in batches.