I'm converting our student database for my department from access to mysql right now, and am going through the old design and trying to redesign it to make it more efficient, etc. I'm stuck with a bit of a problem right now...
Just so y'all know, here's a picture of the current DB structure:
http://pichosting.pcthike.com/geekphotos/newstudentdbmodel
The question I'm really having is with the "Grades" table. Right now, with the way it is setup (I'm importing the data from Excel, so it's just a flat file right now), there are thousands of entries -- 3120, to be exact. This table will, of course, keep growing as our students take more classes; I'm afraid that at a certain point, running queries on grades on this table will become inefficient. In the grades table itself, the rows "Year" and "Student #" are duplicated many times over. I'm not sure, though, how to design the table to be more efficient; the only thing I've thought of so far isn't really a design change as much as a general change -- taking out the "Year" column and separating the Grades table into Grades-2002, Grades-2001, etc.
Any better ideas?
thanks,
Rob
Just so y'all know, here's a picture of the current DB structure:
http://pichosting.pcthike.com/geekphotos/newstudentdbmodel
The question I'm really having is with the "Grades" table. Right now, with the way it is setup (I'm importing the data from Excel, so it's just a flat file right now), there are thousands of entries -- 3120, to be exact. This table will, of course, keep growing as our students take more classes; I'm afraid that at a certain point, running queries on grades on this table will become inefficient. In the grades table itself, the rows "Year" and "Student #" are duplicated many times over. I'm not sure, though, how to design the table to be more efficient; the only thing I've thought of so far isn't really a design change as much as a general change -- taking out the "Year" column and separating the Grades table into Grades-2002, Grades-2001, etc.
Any better ideas?
thanks,
Rob
