Database normalization

It was first proposed by British computer scientist Edgar F. Codd as part of his relational model.

However, normal forms beyond 4NF are mainly of academic interest, as the problems they exist to solve rarely appear in practice.

A table that conforms to the relational model has a primary key which uniquely identifies a row.

To conform to 2NF and remove duplicates, every non-candidate-key attribute must depend on the whole candidate key, not just part of it.

To resolve this, we can place {Author Nationality}, {Publisher Country}, and {Genre Name} in their own respective tables, thereby eliminating the transitive functional dependencies: The elementary key normal form (EKNF) falls strictly between 3NF and BCNF and is not much discussed in the literature.

And therefore the retailer decided to add a table that contains data about availability of the books at different locations: As this table structure consists of a compound primary key, it doesn't contain any non-key attributes and it's already in BCNF (and therefore also satisfies all the previous normal forms).

However, assuming that all available books are offered in each area, the Title is not unambiguously bound to a certain Location and therefore the table doesn't satisfy 4NF.

That means it wasn't possible to decompose the Franchisee - Book - Location without data loss, therefore the table already satisfies 5NF.

[13] Let's have a look at the Book table from previous examples and see if it satisfies the domain-key normal form: Logically, Thickness is determined by number of pages.

In other words – nothing prevents us from putting, for example, "Thick" for a book with only 50 pages – and this makes the table violate DKNF.

A simple and intuitive definition of the sixth normal form is that "a table is in 6NF when the row contains the Primary Key, and at most one other attribute".

Columnar storage also allows fast execution of range queries (e.g., show all records where a particular column is between X and Y, or less than X.)

In all these cases, however, the database designer does not have to perform 6NF normalization manually by creating separate tables.

Some DBMSs that are specialized for warehousing, such as Sybase IQ, use columnar storage by default, but the designer still sees only a single multi-column table.

An insertion anomaly . Until the new faculty member, Dr. Newsome, is assigned to teach at least one course, their details cannot be recorded.
An update anomaly . Employee 519 is shown as having different addresses on different records.
A deletion anomaly . All information about Dr. Giddens is lost if they temporarily cease to be assigned to any courses.