The only thing I can't see is how do year groups fall into this? In each cycle year (e.g 2023/2024) a subject will have a set of year12 classes and year13 classes.
Wow, that looks way simpler than my design and does exactly what I am trying to do! Would you mind sharing the database you have created please so that I can check it does everything?
Sorry if I was not clear originally.
Does my approach make sense?
I have a working (sort of) system that produces a nice grade table. I have entered legacy data by unpivoting my spreadsheet and doing a copy paste. I have not really started on the UI yet. I am trying to get my database to be...
I don't assign grades. I have grade boundaries for each test. I only store raw mark for each test in the table student_has_assesment. I then use a select query and assign grades when I need to see them (it seems redundant to store grades and it is an automated process this way).
Ha ha, that is fine. I may have not set out my intentions clearly.
I am trying to make a student tracking system to replace our multiple spreadsheets.
Here are the intentions :
A student starts with us in Y12
They will study three subjects for two years.
At present I am sure only...
They are describing many-to-many relationships. Each subject can be in many year groups and each year group can contain many subjects.
Assessments can be different papers each year with different numbers of marks. Therefore I have a junction table as each assessment can be in many...
Right, I have anonymised the data and cut it down to two students. The database is attached.
I have the following query set up in design view:
the sql generated is
SELECT Student.student_id, Student.fullname, Assessment.title...
Right I am home now and I can see my mistake in trying to have a gradeset as a single record. I am going to do some re-organising of logic. Thanks for the idea
I have looked the approach you have made. The vba function is making two queries every time it is called. Is this going to slow things down?
I realised that I can get the grade boundaries in my original query. Would it be more efficient to use those and pass them to my function to avoid...