For example, a database that is 3NF is always 1NF and 2NF; does this hold for 4, 5, and 6?
- Anybody can ask a question
- Anybody can answer
- The best answers are voted up and rise to the top
It depends. In theory, yes, though in practice, databases can diverge over time
Normalization is the process of insuring that the tables in the database follow the rules of the various normal forms in order to reduce or eliminate database anomalies.
First Normal Form: Table faithfully represents a relation and has no repeating groups.
However, if one got a database to third normal form, denormalization for performance reasons (an excellent decision, so long as the denormalization is documented) may violate prior normal forms without violating the specific rules of subsequent ones. Furthermore, updates over time may (most likely) add multiple-attribute columns due to carelessness or ignorance on the part of the developer. Thus, while a normalized database is possible, carelessness may break part of the normalization but leave the remainder intact. This completely violates normalization under the theory, but practically violates only a specific normal form.