ServersDatabase Normalization Page 3

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

Latest Posts

Related Stories