* Primary key @ Foreign key ^ Unique field UNF Student_Grade_Report (StudentNo, StudentName, Major, CourseNo, CourseName, InstructorNo, InstructorName, InstructorLocation, Grade) 1 Jim CST CST1600 Database 1 Jim Home A 1 Jim CST CST1021 HTML & CSS 1 Jim Home A 1 Jim CST CST1794 Programming 2 Allen Home A 2 Austin CST CST1600 Database 1 Jim Home A 1NF Student (StudentNo*, StudentName, Major) StudentCourse (StudentNo*, CourseNo*, CourseName, InstructorNo, InstructorName, InstructorLocation, Grade) 2NF Student (StudentNo*, StudentName, Major) CourseGrade (StudentNo*@, CourseNo*@, Grade) CourseInstructor (CourseNo*, CourseName, InstructorNo, InstructorName, InstructorLocation) 3NF Student (StudentNo*, StudentName, Major) CourseGrade (StudentNo*@, CourseNo*@, Grade) Course (CourseNo*, CourseName, InstructorNo@) Instructor (InstructorNo*, InstructorName, InstructorLocation) Jim's 3NF Student ( StudentNo*, StudentName, Major@ ) 1 Jim CST 2 Austin CP Major ( Code* ) CST CP Course ( CourseId*, CourseNo, CourseName ) 1 CST1600 Database 2 CST1021 HTML & CSS 3 CST1794 Programming Instructor ( InstructorNo*, InstructorName, InstructorLocation ) 1 Jim Home 2 Allen Home Class ( ClassId^, CourseId*, InstructorNo* ) 1 1 1 2 2 1 3 3 2 StudentClassGrade (StudentNo*, ClassId*, Grade) 1 1 A 1 2 A 1 3 A 2 1 A Exmple 1 emp ( emp_id*, emp_name, emp_address, emp_dept ) emp ( emp_id*, emp_name, emp_address, dept_id@ ) dept ( dept_id* ) or emp ( emp_id*, emp_name, emp_address ) emp_dept ( emp_id*@, dept_id*@ ) dept ( dept_id* ) Example 2 emp ( emp_id* emp_name emp_address, emp_mobile* ) emp ( emp_id*, emp_name, emp_address ) emp_phone ( emp_id*@, emp_mobile* )