Comprehensive_Database_Normalization
Comprehensive_Database_Normalization
**Benefits of Normalization:**
- Eliminates data redundancy, ensuring efficient storage.
- Improves data integrity and consistency.
- Reduces update and deletion anomalies.
- Enhances query performance by organizing data logically.
**Example:**
Consider a Student table with the following fields:
| Student_ID | Name | Age |
|-----------|------|----|
| 101 | John | 21 |
| 102 | Jane | 22 |
Here, **Student_ID** is the primary key because it uniquely identifies each student.
**Example:**
In a table with Employee_ID and Employee_Name, if each Employee_ID corresponds to only
one Employee_Name, we say:
Employee_Name is functionally dependent on Employee_ID.
**Example:**
**Before (1NF):**
| Student_ID | Name | Course_ID | Course_Name |
|-----------|------|----------|------------|
|1 | John | C101 | Math |
|2 | Jane | C102 | Science |
**After (2NF):**
**Students Table**
| Student_ID | Name |
|-----------|------|
|1 | John |
|2 | Jane |
**Courses Table**
| Course_ID | Course_Name |
|----------|------------|
| C101 | Math |
| C102 | Science |
**Enrollment Table**
| Student_ID | Course_ID |
|-----------|----------|
|1 | C101 |
|2 | C102 |
8. What is the impact of normalization on database performance?
**Advantages:**
- Reduces redundancy.
- Improves data integrity.
- Enhances consistency.
**Disadvantages:**
- Increases query complexity.
- More joins may reduce performance.