Database Table design Help
It's not normalized. StudentMarks has one value for homework. That does not sound ideal.

Makes more sense, to me, to have a another table GRADES, or the like. CREATE TABLE grades ( category text, grade float ). Then you can insert into it VALUES ('homework', 100) keep all those grades and then later at query time avg() them.