Summary of normalization rules
The following normal forms are explained in this section:
- First normal form
- A table is in the first normal form if it contains no repeating columns.
- Second normal form
- A table is in the second normal form if it is in the first normal form and contains only columns that are dependent on the whole (primary) key.
- Third normal form
- A table is in the third normal form if it is in the second normal form and contains only columns that are nontransitively dependent on the primary key.
When you follow these rules, the tables of the model are in the third normal form, according to E. F. Codd, the inventor of relational databases. When tables are not in the third normal form, either redundant data exists in the model, or problems exist when you attempt to update the tables.
If you cannot find a place
for an attribute that observes these rules, you have probably made
one of the following errors:
- The attribute is not well defined.
- The attribute is derived, not direct.
- The attribute is really an entity or a relationship.
- Some entity or relationship is missing from the model.