Keys and integrity
A primary key uniquely identifies a row; surrogate keys are stable while natural keys carry meaning and can change. Foreign keys, unique constraints, NOT NULL and CHECK constraints push correctness into the database, where every client benefits.
Normal forms
1NF removes repeating groups; 2NF removes partial dependencies on part of a composite key; 3NF removes transitive dependencies on non-key columns. In practice, 3NF is the working target for transactional schemas because it eliminates most update anomalies.
Denormalising on purpose
Duplicating data speeds reads and complicates writes. Denormalise for analytics, for measured hot paths, and never as a shortcut around a modelling problem — record why, and make one system responsible for keeping the copy correct.