Normalization

The process of structuring data in a way to curb redundancy and ensure data integrity

1NF

  • Using row order to convey information violates 1NF, e.g., arranging numbers from smallest to largest without indexing
  • Mixing data types within a column violates 1NF
  • Designing a table without a primary key violates 1NF
  • Storing a repeating group of data items on a single row violates 1NF

2NF

  • Each non-key attribute must depend on the entire primary key

3NF

  • Every non-key attribute in a table should depend on the (primary) key, the whole key, and nothing but the key. There should be no dependency between non-key columns

Boyce-Codd Normal Form

  • Every non-key attribute in a table should depend on the (primary) key, the whole key, and nothing but the key. There should be no dependency between non-key columns

4NF

  • Multivalued dependencies in a table must be multivalued dependencies on the (primary) key. (multivalued dependency - e.g. a sweater can be available in more than one color)

5NF

  • The table, which must be in 4NF, can’t be described as the logical result of joining some other tables together