Database normalization

normalizationnormalizednormal formnormal formsdatabase normalisationnormalizenormalizingdenormalizednon-first normal formNormal form (databases)
Database normalization is the process of structuring a relational database in accordance with a series of so-called normal forms in order to reduce data redundancy and improve data integrity.wikipedia
98 Related Articles

Relational model

relationalrelational data modelrelationships
It was first proposed by Edgar F. Codd as part of his relational model.
The theory includes a process of database normalization whereby a design with certain desirable properties can be selected from a set of logically equivalent alternatives.

Unnormalized form

UNFUnnormalized
That means that, having data in unnormalized form (the least normalized) and aiming to achieve the highest level of normalization, the first step would be to ensure compliance to first normal form, the second step would be to ensure second normal form is satisfied, and so forth in order mentioned above, until the data conform to sixth normal form.
Unnormalized form (UNF), also known as an unnormalized relation or non first normal form (NF 2 ), is a simple database data model (organization of data in a database) lacking the efficiency of database normalization.

Third normal form

3NF3NF databasesthird
Codd went on to define the second normal form (2NF) and third normal form (3NF) in 1971, and Codd and Raymond F. Boyce defined the Boyce-Codd normal form (BCNF) in 1974. A table in third normal form (3NF) is a table in 2NF that has no transitive dependencies.

Second normal form

2NFsecond
That means that, having data in unnormalized form (the least normalized) and aiming to achieve the highest level of normalization, the first step would be to ensure compliance to first normal form, the second step would be to ensure second normal form is satisfied, and so forth in order mentioned above, until the data conform to sixth normal form. Codd went on to define the second normal form (2NF) and third normal form (3NF) in 1971, and Codd and Raymond F. Boyce defined the Boyce-Codd normal form (BCNF) in 1974.
Second normal form (2NF) is a normal form used in database normalization.

Relational database

relational database management systemRDBMSrelational databases
Database normalization is the process of structuring a relational database in accordance with a series of so-called normal forms in order to reduce data redundancy and improve data integrity.
The most common forms of normalization applied to databases are called the normal forms.

First normal form

1NF
That means that, having data in unnormalized form (the least normalized) and aiming to achieve the highest level of normalization, the first step would be to ensure compliance to first normal form, the second step would be to ensure second normal form is satisfied, and so forth in order mentioned above, until the data conform to sixth normal form. Codd introduced the concept of normalization and what is now known as the first normal form (1NF) in 1970.
Database normalization is the process of representing a database in terms of relations in standard normal forms, where first normal is a minimal requirement.

Edgar F. Codd

E. F. CoddE.F. CoddCodd
It was first proposed by Edgar F. Codd as part of his relational model.
One of the normalised forms, the Boyce–Codd normal form, is named after him.

Data redundancy

redundancyredundantredundant data
Database normalization is the process of structuring a relational database in accordance with a series of so-called normal forms in order to reduce data redundancy and improve data integrity.
Data redundancy leads to data anomalies and corruption and generally should be avoided by design; applying database normalization prevents redundancy and makes the best possible usage of storage.

Functional dependency

functional dependenciesfunctionally dependentinspired from relational database theory
Genre ID and Genre Name both depend upon the primary key {Title}, but they are not independent of one another.
The determination of functional dependencies is an important part of designing databases in the relational model, and in database normalization and denormalization.

Raymond F. Boyce

Raymond Boyce
Codd went on to define the second normal form (2NF) and third normal form (3NF) in 1971, and Codd and Raymond F. Boyce defined the Boyce-Codd normal form (BCNF) in 1974.
It is a type of normal form that is used in database normalization.

Boyce–Codd normal form

BCNFBoyce-Codd normal formBoyce Codd Normal Form
Codd went on to define the second normal form (2NF) and third normal form (3NF) in 1971, and Codd and Raymond F. Boyce defined the Boyce-Codd normal form (BCNF) in 1974.
Boyce–Codd normal form (or BCNF or 3.5NF) is a normal form used in database normalization.

Sixth normal form

6NF
That means that, having data in unnormalized form (the least normalized) and aiming to achieve the highest level of normalization, the first step would be to ensure compliance to first normal form, the second step would be to ensure second normal form is satisfied, and so forth in order mentioned above, until the data conform to sixth normal form.
Christopher J. Date and others have defined sixth normal form as a normal form, based on an extension of the relational algebra.

Fourth normal form

4NF4NF database normalization
However, it is worth noting that normal forms beyond 4NF are mainly of academic interest, as the problems they exist to solve rarely appear in practice
Fourth normal form (4NF) is a normal form used in database normalization.

Fifth normal form

5NF
To spot a table not satisfying the 5NF, it is usually necessary to examine the data thoroughly.
Fifth normal form (5NF), also known as project-join normal form (PJ/NF), is a level of database normalization designed to reduce redundancy in relational databases recording multi-valued facts by isolating semantically related multiple relationships.

Transitive dependency

transitive dependenciestransitive functional dependencies
A table in third normal form (3NF) is a table in 2NF that has no transitive dependencies.
In database normalization, one of the important features of third normal form is that it excludes certain types of transitive dependencies.

Denormalization

denormalizeddatabase denormalization
Denormalization is a strategy used on a previously-normalized database to increase performance.

Domain-key normal form

Domain/key normal formDKNFDomain Key Normal Form
Let's have a look at the Book table from previous examples and see if it satisfies the Domain Key Normal Form:
Domain-key normal form (DK/NF) is a normal form used in database normalization which requires that the database contains no constraints other than domain constraints and key constraints.

Foreign key

Foreignforeign key constraintforeign key references
Notice that the Publisher ID column in the Book's table is a foreign key realizing many-to-one relation between a book and a publisher.
Another important part of database design is database normalization, in which tables are broken apart and foreign keys make it possible for them to be reconstructed.

Candidate key

candidatekey candidateskeys
The Book table has one candidate key, the compound key {Title, Format}.

Data integrity

integrityintegrity constraintsDatabase integrity
Database normalization is the process of structuring a relational database in accordance with a series of so-called normal forms in order to reduce data redundancy and improve data integrity.

Column (database)

columnscolumnAttribute
Normalization entails organizing the columns (attributes) and tables (relations) of a database to ensure that their dependencies are properly enforced by database integrity constraints.

Relation (database)

relationrelation schemarelations
Normalization entails organizing the columns (attributes) and tables (relations) of a database to ensure that their dependencies are properly enforced by database integrity constraints.

Dependency theory (database theory)

dependency theorydependenciesdependency
Normalization entails organizing the columns (attributes) and tables (relations) of a database to ensure that their dependencies are properly enforced by database integrity constraints.

First-order logic

predicate logicfirst-orderpredicate calculus
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.