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

Module 5 - Normalization

This document describes normalizing a student database table to eliminate repeating groups and resolve update anomalies. It starts with a single student table and breaks it into multiple tables through normalization. The resulting database consists of 4 tables - Student, Advisor, StudentCourse, and Course. The Student and Advisor tables each have a single primary key. The StudentCourse table joins data from the Student and Course tables to avoid issues from changes in course descriptions.

Uploaded by

api-551332616
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
244 views

Module 5 - Normalization

This document describes normalizing a student database table to eliminate repeating groups and resolve update anomalies. It starts with a single student table and breaks it into multiple tables through normalization. The resulting database consists of 4 tables - Student, Advisor, StudentCourse, and Course. The Student and Advisor tables each have a single primary key. The StudentCourse table joins data from the Student and Course tables to avoid issues from changes in course descriptions.

Uploaded by

api-551332616
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 2

1.

Student (StudentNum, StudentName, NumCredits, AdvisorNum, AdvisorName,

(CourseNum, CourseDescription, Term, Grade))

Based on the table notation shown above, this table contains four repeating

groups. Identify the four columns with repeating groups.

Answer: CourseNum, CourseDescription, Term, Grade

2. To get rid of repeating groups, let’s normalize the Student table to first normal form. We

now have two normalized tables: Student and StudentCourse.

Student (StudentNum, StudentName, NumCredits, AdvisorNum, AdvisorName)

StudentCourse (StudentNum, CourseNum, CourseDescription, Term, Grade)

The new primary key of the StudentCourse table is a combination of StudentNum and

CourseNum column.

Based on the Student table above, multiple students can share the same advisor.

Therefore, update anomalies can occur when there is a change in AdvisorName. We can

solve the problem by creating a new table called Advisor table. List your Advisor table

with its columns and primary key using shorthand notation.

Answer: Advisor (AdvisorNum, AdvisorName)

3. Now, we have the following three tables.

Student (StudentNum, StudentName, NumCredits, AdvisorNum)

Advisor (AdvisorNum, AdvisorName)

StudentCourse (StudentNum, CourseNum, CourseDescription, Term, Grade)

In the StudentCourse table, multiple students can enroll the same course. Therefore,

update anomalies can occur when there is a change in CourseDescription. Solve the
problem by creating a new table called Course table. List your Course table with its

columns and primary key using shorthand notation.

Answer: Course (CourseNum, CourseDescription)

4. We have normalized the original Student table to avoid repeating groups and created new

tables to solve the update anomalies. We now have a good design of our student database

which consists of four tables below. All tables are normalized and do not have update

anomalies.

List all four tables with columns and primary keys using shorthand notation. Use your

answers from exercises 2 and 3 to complete this student database. Note that Student and

StudentCourse tables should be listed as shown. Since Term and Grade columns are

already in the StudentCourse table, they should not be in the Course table.

Answer:

Student (StudentNum, StudentName, NumCredits, AdvisorNum)

Advisor (AdvisorNum, AdvisorName)

StudentCourse (StudentNum, CourseNum, Term, Grade)

Course (CourseNum, CourseDescription)

You might also like