0% found this document useful (0 votes)
3 views

Module 5 - Normalization

Normalization is a process aimed at reducing data redundancy and anomalies in database tables by organizing data into a structured format. It involves several stages, including First Normal Form (1NF), Second Normal Form (2NF), Third Normal Form (3NF), and Boyce-Codd Normal Form (BCNF), each with specific requirements to ensure data integrity. The normalization process includes steps such as eliminating repeating groups, identifying primary keys, and ensuring all attributes are dependent on the primary key.
Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
3 views

Module 5 - Normalization

Normalization is a process aimed at reducing data redundancy and anomalies in database tables by organizing data into a structured format. It involves several stages, including First Normal Form (1NF), Second Normal Form (2NF), Third Normal Form (3NF), and Boyce-Codd Normal Form (BCNF), each with specific requirements to ensure data integrity. The normalization process includes steps such as eliminating repeating groups, identifying primary keys, and ensuring all attributes are dependent on the primary key.
Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 31

NORMALIZATION

NORMALIZATION
Normalization is the process for evaluating and correcting table

Normalization
structures to minimize data redundancies
/mnlinan

• Reduces data anomalies


Normalization
• Helps eliminate data redundancy
WHY NORMALIZE?
/mnlinan

• It must be in table format


Normalization Stages
• Repeating groups removed
FIRST NORMAL • Primary key (PK) identified
FORM (1NF)
/mnlinan

SECOND NORMAL FORM


(2NF) Normalization Stages

• It must be in the 1NF


• No partial dependencies
/mnlinan

THIRD NORMAL FORM


(3NF) Normalization Stages

• It must be in 2NF
• No transitive dependencies
/mnlinan

BOYCE-CODD NORMAL FORM


(BCNF) Normalization Stages

• Every determinant is a candidate key


• Special case of 3NF
/mnlinan

FOURTH NORMAL FORM


(4NF) Normalization Stages

• It must be in the 3NF


• No independent multivalued dependencies
/mnlinan

NOTE:
Normalization Stages
• 2NF is better than 1NF; 3NF is better than 2NF.
• For most business database design purposes, 3NF is as high as we
need to go in normalization process.
• Highest level of normalization is not always most desirable
/mnlinan

NORMALIZATION PROCESS
Normalization Process
• Each table represents a single subject
• No data item will be unnecessarily stored in more than one
table • All attributes in a table are dependent on the primary key
/mnlinan

CONVERSION TO FIRST

NORMAL FORM Normalization Process

Step 1: Eliminate the Repeating Groups

• Present data in tabular format. Each cell has single value and there
are no repeating groups
• Eliminate repeating groups. Eliminate nulls by making sure that
each repeating group attribute contains an appropriate data
value

/mnlinan

CONVERSION TO FIRST

NORMAL FORM Normalization Process


/mnlinan

CONVERSION TO FIRST
NORMAL FORM Normalization Process

Step 2: Identify the Primary Key

• Primary key must uniquely identify attribute value


• New key must be composed

/mnlinan
CONVERSION TO FIRST

NORMAL FORM Normalization Process

• Step 3: Identify All Dependencies

Dependencies can be depicted with help of a dependency diagram


/mnlinan

DEPENDENCY DIAGRAM
Normalization Process
• Depicts all dependencies found within given table structure •
Helpful in getting bird’s-eye view of all relationships among table’s
attributes
• Makes it less likely that will overlook an important dependency
/mnlinan

DEPENDENCY DIAGRAM
Normalization Process
/mnlinan

CONVERSION TO FIRST
NORMAL FORM Normalization Process

First normal form describes tabular format in which:


• All key attributes are defined
• There are no repeating groups in the table
• All attributes are dependent on primary key
• All relational tables satisfy 1NF requirements

/mnlinan
CONVERSION TO SECOND

NORMAL FORM Normalization Process

Step 1: Write Each Key Component on a Separate Line

• Write each key component on separate line, then write original


(composite) key on last line
• Each component will become key in new table
/mnlinan

CONVERSION TO SECOND

NORMAL FORM Normalization Process

Step 2: Assign Corresponding Dependent Attributes

• Determine those attributes that are dependent on other


attributes • At this point, most anomalies have been eliminated
/mnlinan

DEPENDENCY DIAGRAM
Normalization Process
/mnlinan

CONVERSION TO SECOND
NORMAL FORM Normalization Process

Table is in second normal form (2NF) when:


• It is in 1NF and
• It includes no partial dependencies: No attribute is dependent on
only portion of primary key
/mnlinan

CONVERSION TO THIRD

NORMAL FORM Normalization Process

Step 1: Identify Each New Determinant

• For every transitive dependency, write its determinant as PK for


new table
Determinant
• A determinant is any attribute whose value determines other
values within a row.

/mnlinan

CONVERSION TO THIRD

NORMAL FORM Normalization Process

Step 2: Identify the Dependent Attributes

• Identify attributes dependent on each determinant identified in Step


1 and identify dependency
• Name table to reflect its contents and function

/mnlinan

CONVERSION TO THIRD

NORMAL FORM Normalization Process

Step 3: Remove the Dependent Attributes from


Transitive Dependencies
• Eliminate all dependent attributes in transitive relationship(s) from
each of the tables that have such a transitive relationship
• Draw new dependency diagram to show all tables defined in Steps
1–3
• Check new tables as well as tables modified in Step 3 to make sure
that each table has determinant and that no table contains
inappropriate dependencies

/mnlinan

DEPENDENCY DIAGRAM
Normalization Process
/mnlinan

CONVERSION TO THIRD
NORMAL FORM Normalization Process

A table is in third normal form (3NF) when both of the following are
true:
• It is in 2NF
• It contains no transitive dependencies
/mnlinan

ISSUES TO ADDRESS IN ORDER TO


PRODUCE A GOOD NORMALIZED SET
OF TABLES
Normalization Process
• Evaluate PK Assignments
• Evaluate Naming Conventions
• Refine Attribute Atomicity
• Identify New Attributes
• Identify New Relationships
• Refine Primary Keys as Required for Data Granularity
• Maintain Historical Accuracy
• Evaluate Using Derived Attributes

/mnlinan

You might also like