I am trying to set up a basic Student's database in access. The main tables that I am using are Courses, Students, Staff and Modules.
Just to clarify a bit about my terminology:
- My course is actually a University. (i.e. Economics Course)
- My Modules are the actual courses referring to each University. (i,e, Economics Course include modules such as Maths, Statistics, Econometrics etc.).
- My Staff are the teachers.
- A module includes exactly 12 lectures.
- A module is being offered in a specific semester(6 month period), A=Sept-Feb and B=Mar-Aug. One module can be offered only in one out of two semesters.
The relationships that I want to use are:
- A course has many students. (one-to-many)
- A course has many modules. (one-to-many)
- Maximum 1 staff member can lead 1 course. I need to know the date he got leadership of this course (mgrstartdate). (one-to-one) Staff can have only 1 specialization (i.e. John Smith is Mathematician) Staff can have many qualifications (i.e. "10 years previous experience" and "published articles")
- A staff member teaches many modules. (one-to-many)
- A student can register(undertake) in many modules. (many-to-many) In this case i need to know date of registration and the final grade(performance).
- A student can attend many modules. (many-to-many) In this case i need to get attendance date, attendance(yes/no) and time of arrival. (Time of arrival is the reason i am tracking attendance and not absence)
- A module includes 12 lectures. (one-to-many) A module is being offered in a specific semester(6 month period), A =Sept-Feb and B=Mar-Aug. One module can be offered only in one out of two semesters.
So here follows my tables and their relationships preview: Access Relationships preview
Does it look like as described on the relationships above? Is it functional to record student's performance, attendance and arrival time? I used Lecture table to keep track date/time for each module. Is that needed or i can just move all the attributed of lecture table into the module table?