Loading

First Normal Form

A table is in first normal form (1NF) if it meets the following
criteria:
1. The data are stored in a two-dimensional table.
2. There are no repeating groups.
The key to understanding 1NF, therefore, is understanding the nature
of a repeating group of data.
Understanding Repeating Groups
A repeating group is an attribute that has more than one value in each
row of a table. For example, assume that you were working with an
employee relation and needed to store the names and birth dates of
the employees’ children. Because each employee can have more than
one child, the names of the children and their birth dates each form
a repeating group.
Note: A repeating group is directly analogous to a multivalued attribute in
an ER diagram.
There is actually a very good reason why repeating groups are not
permitted. To see what might happen if they were used, take a look
at Figure 6-2, an instance of an employee table containing repeating
groups. Notice that there are multiple values in a single row in both
the children’s names and the children’s birth dates columns. This
presents two major problems:

There is no way to know exactly which birth date belongs to which
child. It is tempting to say that we can associate the birth dates with
the children by their positions in the list, but there is nothing to
ensure that the relative positions will always be maintained.
n Searching the table is very difficult. If, for example, we want to know
which employees have children born before 2005, the DBMS will
need to perform data manipulation to extract the individual dates
themselves. Given that there is no way to know how many birth
dates there are in the column for any specific row, the processing
overhead for searching becomes even greater.
The solution to these problems, of course, is to get rid of the repeating
groups altogether.

posted @ 2014-08-05 16:24  .net's  阅读(342)  评论(0)    收藏  举报