What is Normalization of Database?

 

Normalization of Database:

Database Normalizations is a technique of organizing the data in the database. Normalization is a systematic approach of decomposing tables to eliminate data redundancy and undesirable characteristics like insertion, update and deletion anomalies. It is a multi-step process that puts data into tabular form by removing duplicated data from the relation tables.

 

Normalization is used for mainly two purpose,

(i) Eliminating redundant (useless) data.

(ii) Ensuring data dependencies make sense i.e. data is logically stored.

 

Problem without Normalization:

Without Normalization, it becomes difficult to handle and update the database, without facing data loss. Insertion, Updating and Deletion Anomalies are very frequent if Database is not normalized.

S_id

S_Name

S_Address

Subject_opted

401

Adam

Noida

Bio

402

Alex

Panipat

Maths

403

Stuart

Jammu

Maths

404

Adam

Noida

Physics

Table 1: Students Database            

·        Updating Anomaly: To update address of a student who occurs twice or more than twice in a table, we will have to update Address column in all the rows, else data will become inconsistent.

·        Insertion Anomaly: Suppose for a new admission, we have a Student id (S_id), name and address of a student but if student has not opted for any subjects yet then we have to insert NULL there, leading to Insertion Anomaly.

·        Deletion Anomaly: If (S_id) 401 has only one subject and temporarily he drops it, when we delete that row, entire student record will be deleted along with it.

Theory of Data Normalization in Sql is still being developed further. For example, there are discussions even on 6th Normal Form. But in most practical applications normalization achieves its best in 3rd Normal Form. The evolution of Normalization theories is illustrated below-


Figure: Normalization Classification


Post a Comment

Thankyou

Previous Post Next Post