Database normalization assures that anomalies, such as delete, insert and update anomalies, don’t occur in the database. When databases are not normalized, then strange things can happen, to the behavior of the application, which the poorly designed database supports. An insert anomaly may occur when insertions, of new information into the database, are not allowed due to missing or inconsistent information. The deletion anomaly, may occur when deletions on the database, impact rows, which were not meant to be deleted.
Also sometimes, deletions of items in a database, may not delete all items, in order to keep the data in the database consistent. Update anomalies are similar to deletion anomalies, the only difference is that the information is updated, instead of being deleted. When data in a database, is not updated properly, then the database would again have inconsistent data. For example, let’s say that a database was not properly normalized, there will be tables, which contain addresses of staff in two different places, and the address is updated incorrectly, then that staff would have two different addresses in the database.
Therefore, normalization must occur in order for a database to work properly, and avoid the different types of data anomalies, I mentioned above. The process of normalization takes place in three different steps, namely 1NF, 2NF and 3NF, in order to achieve the optimal normal form of a database. 1NF states that there should be no repeating elements or groups of elements in the database, this is known as atomicity. 2NF states that there shall not be partial dependency of columns with concatenated primary keys. The 3NF states that the database table, which needs to be normalized should be in the 2NF, and that there shall not be any transient relationships between entities; meaning that tables can’t be related to each other indirectly through a third table. When a relational database goes through all the three steps of normalization, then anomalies will have a hard time to exist in that database. However, when database administrators or DBAs fail to properly develop a database, then all types of problems, are going to take place, when information is loaded, updated or deleted on the database.
The database may still work, however, the user will have a hard time using the application, which would make the database useless. In a relational database, it is imperative that DBAs, use the normalization techniques, in order to reduce and even eliminate, the opportunity for data redundancy. A database should never maintain the same information in several places because it would be difficult to store information into that database.
The organizing of data in a database, in a most efficient manner possible, is the goal of database normalization, failing to do this, will increase the likelihood that a database is poorly designed. Therefore, it is important to use database normalization techniques, in order to avoid developing an application that is not useful to users. Database normalization has too many benefits, which outweigh the drawbacks, and DBAs should use these techniques, to develop better databases.
Thank you for reading this article!!!