Eliminate Columns Not Dependent On Key(3NF) |
Eliminate Columns Not Dependent On Key( 3NF )
The Member table satisfies first normal form - it contains no repeating
groups. It satisfies second normal form - since it doesn't have a multivalued
key. But the key is MemberID, and the company name and location describe only a
company, not a member. To achieve third normal form, they must be moved into a
separate table. Since they describe a company, CompanyCode becomes the key of
the new "Company" table.
The motivation for this is the same for second normal form: we want to avoid
update and delete anomalies. For example, suppose no members from the IBM were
currently stored in the database. With the previous design, there would be no
record of its existence, even though 20 past members were from IBM!
|