Database Normalization – page 3
Third Normal Form prohibits transitive dependencies. A transitive dependency exists when any attribute in a table is dependent on any other non-key attribute in that table.
Consider the following example CourseSections Table:
| CourseID | Section |
ProfessorID | ProfessorName |
| 3100 | 1 | 6789 | David |
| 1300 | 1 | 6789 | David |
The professor is uniquely identified by the CourseID and Section of the course. However, ProfessorName depends on ProfessorID and has no relation to CourseID or Section.
This data is properly stored as follows:
Professors
Table
| ProfessorID | ProfessorName |
| 6789 | David |
CourseSections Table
| CourseID | Section | ProfessorID |
| 3100 | 1 | 6789 |
| 1300 | 1 | 6789 |
By splitting the data into two tables, the transitive dependency is removed.
Taking the original design of the CourseSections table introduces the chance that ProfessorName may be Corrupted. Perhaps, on the second row the ProfessorName is entered as Davif, a simple typo. Since there is no such professor Davif, there would be a problem.
Original date of publication, 02/21/2001

Solid state disks (SSDs) made a splash in consumer technology, and now the technology has its eyes on the enterprise storage market. Download this eBook to see what SSDs can do for your infrastructure and review the pros and cons of this potentially game-changing storage technology.