Adding a new column is one of the most common schema changes in relational databases. Done wrong, it can lock tables, slow writes, and disrupt production. Done right, it expands the data model without impact on uptime. The mechanics are simple, but the cost of mistakes is high.
In SQL, a new column is created with ALTER TABLE. For example:
ALTER TABLE users ADD COLUMN last_login TIMESTAMP;
This statement adds the last_login column to the users table. On small tables, it completes instantly. On large or high-traffic tables, it can block reads and writes. Different database engines handle this differently. PostgreSQL can add nullable columns with a default of NULL instantly. MySQL sometimes requires a full table rebuild unless using ALGORITHM=INPLACE or ALGORITHM=INSTANT in supported versions.
Plan for constraints and indexes. Adding a NOT NULL column with a default will often rewrite every row unless the database has optimized default value handling. Adding an index after adding the column can also trigger a full table scan. Sequence the operations to minimize impact.