Issues of Normalization

To normalize or not to normalize, that is the question.

What is normalization? And why do we use it?

In databases, normalization allows you to reduce, if not eliminate, database redundancy and inconsistency, making your databases more flexible. You achieve database normalization by breaking one table into multiple tables and creating relationships between them. The process of breaking one table into smaller tables is done by following different normalization forms.

Example

Take the example of a Contacts application. This application needs to store names, phone numbers, email addresses, and home/work addresses. A contact can have one or more phone numbers and email addresses. A contact can either have a home address, a work address, or both. A contact can have more than one home and/or work address.

Your properties will be:

  • First name
  • Last name
  • List of phone numbers
  • List of home/work addresses

Your table could end up looking something like this:

Get hands-on with 1200+ tech skills courses.