Definition: In order to be in Third Normal Form, a relation must first fulfill the requirements to be in Second Normal Form. Additionally, all attributes that are not dependent upon the primary key must be eliminated.
Examples: The following table is NOT in Third Normal Form:
| Company | City | State | ZIP |
| Acme Widgets | New York | NY | 10169 |
| ABC Corporation | Miami | FL | 33196 |
| XYZ, Inc. | Columbia | MD | 21046 |
In this example, the city and state are dependent upon the ZIP code. To place this table in 3NF, two separate tables would be created -- one containing the company name and ZIP code and the other containing city, state, ZIP code pairings.
This may seem overly complex for daily applications and indeed it may be. Database designers should always keep in mind the tradeoffs between higher level normal forms and the resource issues that complexity creates.
本文解释了数据库设计中第三范式的要求及其重要性。为了达到第三范式,除了满足第二范式的条件外,所有非主键字段必须直接依赖于主键,而非部分依赖或传递依赖。举例说明了如何通过分离表来消除传递依赖。
2669





