When you add a new column, you extend the schema. This is not only a structural change—it is a contract change. Every consumer of that table must handle the new definitions. Nullability, defaults, indexing, and constraints all have direct impact on performance and reliability. Skipping these checks will slow queries, cause data drift, or leave orphaned values.
Start with intent. Identify the exact purpose for the new column. Is it a boolean flag, a computed field, or a foreign key? Decide if the column allows nulls, what default it takes, and if it should be indexed. Use explicit data types that match your read and write patterns.
Perform the migration in a way that does not block reads or writes. In high-traffic systems, prefer additive changes in small steps: