Answers to Review Questions
1. What is normalization?
Normalization is the process of assigning attributes to entities. Properly executed, the normalization
the process eliminates uncontrolled data redundancies, thus
...
Answers to Review Questions
1. What is normalization?
Normalization is the process of assigning attributes to entities. Properly executed, the normalization
the process eliminates uncontrolled data redundancies, thus eliminating the data anomalies and the data
integrity problems that are produced by such redundancies.
Normalization does not eliminate data redundancy; instead, it produces the carefully controlled
the redundancy that lets us properly link database tables.
2. When is a table in 1NF?
A table is in 1NF when all the key attributes are defined (no repeating groups in the table) and when
all remaining attributes are dependent on the primary key. However, a table in 1NF still may contain
partial dependencies, i.e., dependencies based on only part of the primary key and/or transitive
dependencies that are based on a nonkey attribute.
3. When is a table in 2NF?
A table is in 2NF when it is in 1NF and it includes no partial dependencies. However, a table in 2NF
may still have transitive dependencies, i.e., dependencies based on attributes that are not part of the
primary key.
4. When is a table in 3NF?
A table is in 3NF when it is in 2NF and it contains no transitive dependencies.
5. When is a table in BCNF?
A table is in BoyceCodd Normal Form (BCNF) when it is in 3NF and every determinant in the table
is a candidate key. For example, if the table is in 3NF and it contains a nonprime attribute that
determines a prime attribute, the BCNF requirements are not met. (Reference the text's Figure 6.8 to
support this discussion.)This description clearly yields the following conclusions:
If a table is in 3NF and it contains only one candidate key, 3NF and BCNF are equivalent.
BCNF can be violated only if the table contains more than one candidate key. Putting it
another way, there is no way that the BCNF requirement can be violated if there is only one
candidate key
[Show More]