Sound relational database design means taking the time to ensure your database conforms to certain tried-and-true rules.
This module introduces techniques you can use to improve your database designs without worrying about the relational math.
After completing the lessons in this module, you should be able to:
- Explain the requirements for third normal form (3NF)
- Identify transitive dependencies
- Normalize a relation to 3NF
- Describe Codd's 12 criteria for a fully relational RDBMS
- Explain how Codd's 12 criteria relate to normalization
- Explain what type of dependencies might require normalization beyond 3NF
- Define denormalization and identify when it might be useful
The next lesson discusses limitations of second normal form.
When we design a database for an enterprise, the main objective is to
- create an accurate representation of the data,
- relationships between the data, and
- constraints on the data that is pertinent to the enterprise.
To help achieve this objective, we can use one or more database design techniques.
In this module we describe another database design technique called
normalization[1].
Normalization is a database design technique, which begins by examining the relationships (called functional dependencies) between attributes. Attributes describe some property of the data or of the relationships between the data that is important to the enterprise.