SQL noob question: can SQL effectively handle a 2D matrix?
ProgrammingThis forum is for all programming questions.
The question does not have to be directly related to Linux and any language is fair game.
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
This structure could be pictured by having the students listed on the left axis, and the assignments listed on the top axis, and all the grades as entries on a spreadsheet in the body. The interesting part is that the grades are a 2D matrix. Students and/or assignments will need to be able to be dynamically inserted and deleted (imagine editing a spreadsheet).
The other interesting part is that the system will need to be usable on a large scale (imagine, instead of a class of 20 with 15 assignments, a community college with 55 campuses across the nation, 100 courses offered per campus, and 20-1000 students per class). It should be possible to add an assignment to a course that is fragmented into different classes with the same assignments.
As well, it should be possible to access the gradebook with multiple frontends (e.g. one in Qt, one in GTK, one in terminal, etc) if these are written, and it would be nice if the system could support a simple mode in which the grades are simply written to a file (ideal for a typical high school teacher in a school without a Linux server).
My question is: would MySQL be ideal for this sort of setup, or would another SQL system or another database setup be better?
One of the ways you can achieve this would be, create a grades table where you will have student id, assignment id(as foreign keys) and the grade. Now you can search the grades table by student id, assignment is or both.