Adding a new column is not just about storing data. It is about shaping the way your application thinks. Schema changes affect queries, indexes, migrations, and performance. When you add a column, you decide how every record in your system will carry that new piece of information from now on.
In SQL, ALTER TABLE is the standard tool. In PostgreSQL:
ALTER TABLE orders ADD COLUMN priority INT DEFAULT 0;
This is instant for small tables, but on large datasets it can lock writes. MySQL behaves differently; depending on the storage engine and version, adding a new column may require a full table rebuild. In distributed databases like CockroachDB, schema changes are propagated across nodes, which impacts transaction latency.
Data type choice matters. Use integers for counters, text for strings where indexing is light, and JSON when structure may evolve but strict relational design is too heavy. Defaults prevent NULL-related bugs but may consume storage. Nullable columns can be faster to add, but handling NULL in queries adds complexity.