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
Property of TechnologyAdvice. © 2025 TechnologyAdvice. All Rights Reserved
Advertiser Disclosure: Some of the products that appear on this site are from companies from which TechnologyAdvice receives compensation. This compensation may impact how and where products appear on this site including, for example, the order in which they appear. TechnologyAdvice does not include all companies or all types of products available in the marketplace.