Solved

School timetabler and room booking database design

Posted on 2010-11-18
5
971 Views
Last Modified: 2013-11-05
Hi,

I am currently having a major issue with a project im working on. I need to devlop a school timetable and room booking application with quite simple functionality e.g. being able to generate a students timetable i am currently relaly struggling with how i can create the database to store all of the information.

I am really struggling to come up with a suitable database design that will hold all of the students information all of the lecturer's information. The module information to its pertaining course, the lecturer that looks after the module how long the lecture is e.g. 1 or 2 hours long lastly generating all of that information into a timetable for a specific course showing you the day of the week it is on and the time it is on.

Any help in the design and normalisation of the required tables would be of a great help, i really am at a loss.

Apologies if this isnt clear, i will try and explain / answer any queries as quickly as possible
0
Comment
Question by:Nick1988
5 Comments
 
LVL 42

Expert Comment

by:EugeneZ
ID: 34162992
check as example:
hotel rooms reservation project - the same idea
http://www.sourcecodester.com/visual-basic-net/hotel-reservation-system-vbnet.html
0
 
LVL 2

Expert Comment

by:aheddell
ID: 34162996
With respect, aren't you re-inventing the wheel here?  There are dozens of applications out there that do this kind of thing and quite a few open source.

Does the school run Outlook and Exchange?  I would have thought an Outlook form would be a very effective way forward.  I certainly have implemented room booking that way in the past

Sorry to not really answer your question - there's nowhere near enough detail here but I would have thought there are better ways forward.

Hope you don't take this the wrong way...!?!?

Alex Heddell
0
 
LVL 16

Expert Comment

by:EvilPostIt
ID: 34163008
Just at first glance i would split this into 4 sections for though.

Lecturers
Students
Courses
Allocation Time Slots

With regards to the Allocation Time Slots i would assume (obviously i could be way off) that there are specific blocks of time (almost like periods) throughout the day. You could create all of the allocatable periods within a week in a table along these lines.

The courses table would have a list and description of all courses and maybe some other tables linking off from it with larger information. Critically you should have an linking table sitting between the courses table and the allocation time slots table (Maybe CourseTimeTable. Then simply you would confirgure a course and allocation what times it took place on any given week.

The lecturer table would be referenced from the course table thus making only 1 lecturer assignable on any 1 course.

For the Student table i would have an Enrollment table so that each student could be enrolled to more than 1 course and each course can have more that 1 student.

Obviously this is just my initial thoughts on how i would design it and there will be hundreds out there. So hope this helps and good luck.

Or on the other hand use outlook ;-)
0
 
LVL 10

Accepted Solution

by:
Humpdy earned 500 total points
ID: 34163021
depending on complex you need to get ..
break it down into blocks of what data you need to store.

firstly, you need to store info about the student.
so you would have a students table, containing something like studentID, first_name, last_name, date_of_birth.
You may also need info about the lecturer
Lecturers table, containing LecturersID, first_name, last_name, email_address, phone

secondly, you need information about the courses.
so you would have a courses table, containing something like CourseID, course_description

thirdly, you may have modules under these courses
so you have would have a CourseModule table, containing CourseModuleID, CourseID, Module_name, Lecturer_ID

thirdly, you need to know what students are taking what module, which can then refer to what course it is with the above table.
so you would have a StudentsCourseModule table, containing something like StudentsCourseModuleID, StudentID, ModuleID


this getting you in the right direction ?



0
 

Author Closing Comment

by:Nick1988
ID: 34535525
thanks and sorry for taking so long to get back to the question!
0

Featured Post

What Should I Do With This Threat Intelligence?

Are you wondering if you actually need threat intelligence? The answer is yes. We explain the basics for creating useful threat intelligence.

Join & Write a Comment

Suggested Solutions

Use this article to create a batch file to backup a Microsoft SQL Server database to a Windows folder.  The folder can be on the local hard drive or on a network share.  This batch file will query the SQL server to get the current date & time and wi…
Shadow IT is coming out of the shadows as more businesses are choosing cloud-based applications. It is now a multi-cloud world for most organizations. Simultaneously, most businesses have yet to consolidate with one cloud provider or define an offic…
Via a live example, show how to shrink a transaction log file down to a reasonable size.
Viewers will learn how to use the SELECT statement in SQL to return specific rows and columns, with various degrees of sorting and limits in place.

747 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

13 Experts available now in Live!

Get 1:1 Help Now