2. 2 INTRODUCTION.
First normal form was introduced by E.F. Codd in the paper "A
Relational Model of Data for Large Shared Data Banks", although it was
initially just called "Normal Form". It was renamed to "First Normal
Form" when additional normal forms were introduced in the paper
Further Normalization of the Relational Mode.
Relational database design ultimately produces a set of relations. The
implicit goals of the design activity are: information preservation and
minimum redundancy.
3. 3
Normalization
Normalization; is a database technique that reduces data redundancy and
eliminates undesirable characteristics like insertion, update and Deletion
Anomalies.
Normalization rules divides larger tables into smaller tables that links those
using relationships. The purpose of normalization is to eliminate redundant
data and ensure data is stored logically.
Normalization increase clarity and is achieved by following a set of rules
called “forms” in creating a database
The purpose of this normalization is to increase flexibility and data
independence, and to simplify the data language. It also opens the door to
further normalization, which eliminates redundancy and anomalies.
4. 4
Database Normalization entails organizing the columns (attributes) and
tables (relations) of a database to ensure that their dependencies are
properly enforced by database integrity constraints. It is accomplished by
applying some formal rules either by a process of synthesis (creating a new
database design) or decomposition (improving an existing database design).
5. 5 FIRST NORMAL FORM.
The First normal form (1NF) is a property of a relation in a relational
database. A relation is in first normal form if and only if no attribute domain
has relations as elements.
Or more informally, that no table column can have tables as values or no
repeating groups.
The first normal form is one of the minimal requirements in the database
normalization processes.
The first step in confirming 1NF is modifying multivalued columns to make
sure that each column in a table does not take more than one entry.
6. 6
The first normal form states that:
• Every column in the table must be unique
• Separate tables must be created for each set of related data
• Each table must be identified with a unique column or concatenated columns called the
primary key
• No rows may be duplicated
• no columns may be duplicated
• no row/column intersections contain a null value
• no row/column intersections contain multivalued fields
• Each cell must contain only a single (atomic) value.
• Every column in the table must be uniquely named.
• All values in a column must pertain to the same domain.
9. 9 1NF tables as representations of
relations
According to Date's definition, a table is in first normal form if and only if it is
isomorphic to some relation, which means, specifically, that it satisfies the
following five conditions
1. There's no top-to-bottom ordering to the rows.
2. There's no left-to-right ordering to the columns.
3. There are no duplicate rows.
4. Every row-and-column intersection contains exactly one value from
the applicable domain (and nothing else).
5. All columns are regular [i.e. rows have no hidden components
such as row IDs, object IDs, or hidden timestamps].
12. 12 Objectives
A basic objective of the first normal form defined by Codd in 1970 was to permit
data to be queried and manipulated using a "universal data sub-language"
grounded in first-order logic SQL is an example of such a data sub-language.
1. To free the collection of relations from undesirable insertion, update
and deletion dependencies.
2. To reduce the need for restructuring the collection of relations, as new
types of data are introduced, and thus increase the life span of application
programs.
3. To make the relational model more informative to users.
4. To make the collection of relations neutral to the query statistics, where
these statistics are liable to change as time goes by.
13. 13
DRAWBACKS & CRITICISM
• Performance for certain operations. In a hierarchical model, nested
records are physically stored after the parent record, which means a whole sub-
tree can be retrieved in a single read operation.
In a 1NF form, it will require a join operation per record type, which can be costly,
especially for complex trees. For this reason document databases eschew 1NF.
• Object-oriented languages represent runtime state as trees or directed
graphs of objects connected by pointers or references. This does not map cleanly
to a 1NF relational database, a problem sometimes called the Object-Relational
Impedance Mismatch.
• 1NF has been interpreted as not allowing complex data types for values.
This is open to interpretation though.