Professional Documents
Culture Documents
Definition of Third Normal Form
Definition of Third Normal Form
A 3NF definition that is equivalent to Codd's, but expressed differently, was given
by Carlo Zaniolo in 1982. This definition states that a table is in 3NF if and only if,
for each of its functional dependencies X → A, at least one of the following
conditions holds:
Zaniolo's definition gives a clear sense of the difference between 3NF and the
more stringent Boyce–Codd normal form (BCNF). BCNF simply eliminates the
third alternative ("Every element of A-X, the set difference between A and X, is a
prime attribute").
"Nothing but the key"
An approximation of Codd's definition of 3NF, paralleling the traditional pledge to
give true evidence in a court of law, was given by Bill Kent: "[Every] non-key
[attribute] must provide a fact about the key, the whole key, and nothing but the
key."[7]
Requiring existence of "the key" ensures that the table is in 1NF; requiring that
non-key attributes be dependent on "the whole key" ensures 2NF; further
requiring that non-key attributes be dependent on "nothing but the key" ensures
3NF. While this phrase is a useful mnemonic, the fact that it only mentions a
single key means it defines some necessary but not sufficient conditions to satisfy
the 2nd and 3rd Normal Forms. Both 2NF and 3NF are concerned equally with all
candidate keys of a table and not just any one key.
An example of a 2NF table that fails to meet the requirements of 3NF is:
Tournament Winners
Tournament Year Winner Winner Date of Birth
Indiana Invitational 1998 Al Fredrickson 21 July 1975
Cleveland Open 1999 Bob Albertson 28 September 1968
Des Moines Masters 1999 Al Fredrickson 21 July 1975
Indiana Invitational 1999 Chip Masterson 14 March 1977
Because each row in the table needs to tell us who won a particular Tournament in
a particular Year, the composite key {Tournament, Year} is a minimal set of
attributes guaranteed to uniquely identify a row. That is, {Tournament, Year} is a
candidate key for the table.
The breach of 3NF occurs because the non-prime attribute Winner Date of Birth is
transitively dependent on the candidate key {Tournament, Year} via the non-prime
attribute Winner. The fact that Winner Date of Birth is functionally dependent on
Winner makes the table vulnerable to logical inconsistencies, as there is nothing
to stop the same person from being shown with different dates of birth on
different records.
In order to express the same facts without violating 3NF, it is necessary to split
the table into two:
See also
Attribute-value system
References
1. "What is Third Normal Form?" (http://www.techopedia.com/definition/22561/third-
normal-form-3nf) Cory Janssen, Technopedia, retrieved 24 April 2014
2. Codd, E.F. "Further Normalization of the Data Base Relational Model." (Presented at
Courant Computer Science Symposia Series 6, "Data Base Systems," New York City,
May 24th–25th, 1971.) IBM Research Report RJ909 (August 31st, 1971).
Republished in Randall J. Rustin (ed.), Data Base Systems: Courant Computer
Science Symposia Series 6. Prentice-Hall, 1972.
3. Codd, p. 43.
4. Codd, p. 45–46.
5. Zaniolo, Carlo. "A New Normal Form for the Design of Relational Database
Schemata." ACM Transactions on Database Systems 7(3), September 1982.
6. Abraham Silberschatz, Henry F. Korth, S. Sudarshan, Database System Concepts
(http://www.db-book.com/) (5th edition), p. 276-277
7. Kent, William. "A Simple Guide to Five Normal Forms in Relational Database
Theory" (http://www.bkent.net/Doc/simple5.htm), Communications of the ACM 26
(2), Feb. 1983, pp. 120–125.
8. Date, C.J. An Introduction to Database Systems (7th ed.) (Addison Wesley, 2000), p.
379.
9. [1] (http://roelantvos.com/blog/?p=740).
10. [2] (https://infocus.emc.com/william_schmarzo/hadoop-data-modeling-lessons-
vin-diesel/).
Further reading
Date, C. J. (1999), An Introduction to Database Systems (http://www.aw-bc.com
/catalog/academic/product/0,1144,0321197844,00.html) (8th ed.). Addison-Wesley
Longman. ISBN 0-321-19784-4.
Kent, W. (1983) A Simple Guide to Five Normal Forms in Relational Database Theory
(http://www.bkent.net/Doc/simple5.htm), Communications of the ACM, vol. 26,
pp. 120–126