Really struggling with my survey database

safeas

Registered User.
Local time
Today, 06:04
Joined
May 27, 2008
Messages
16
Hello,

Im finding this alot harder than I thought I would.

It a graduation survey:
http://img444.imageshack.us/my.php?image=questionnaire1yv5.jpg

The same survey needs to be filled out by the same student but for multiple modules/subjects.

So I want it to flow like this...

1) The first form requests the student to enter their details (frmStudent):
Age: Under 25/Over 25
Gender: Male/Female
Study Time: Part Time/Full Time

2) The next form asks the student to choose a module (frmModule)
eg. Website Design, Networking etc.

3) The next form will then state each question (frmDelivery) (the questions are all stored in tblQuestions), so I was hoping to display these questions in a text box, how do I do that? The answers (stored in tblAnswers) will be the same for each question (agree, strongly agree, no opinion, disagree, strongly disagree)

Im unsure how it all fits together and how it gets stored in tblResponse. Can someone just point me in the right direction please. Ive attached my database so far. Thanks.
 

Attachments

Ive been posting a lot of questions about survey DBs, I think I may be able to help you out a bit on this one. This is the way I would approach it:
Code:
tblStudents
StudentID - pk
Gender
ModeOfStudy
Age
 
tblQuestions
QuestionID - pk
QuestionText
 
tblAnswers 'this is the lookup table for your combobox rowsource
AnswerID PK, auto
AnswerText - 'this will be your list of answer items - Strongly Agree, Agree, etc etc
 
tblSurveyData ' this is the table that will store the answers to the survey questions
SurveyDataID - pk auto
StudentID - fk
QuestionID - fk
ActualAnswer 'you set the control source for the answer combobox to this field
 
 
 
 
Also, see the thread "Normalization and Form Design" thats basically a whole thread about survey-type DBs
 
Last edited:
I understand that all the responses will be stored in tblResponse, so each time a question is asked there will be a new record with the studentID, moduleID, QuestionID, and AnswerID, but how is this achieved? Do I make a form from tblResponse?
 
I understand that all the responses will be stored in tblResponse, so each time a question is asked there will be a new record with the studentID, moduleID, QuestionID, and AnswerID, but how is this achieved? Do I make a form from tblResponse?


The way I learned to do this was mostly from user CraigDolphin:

Make a form bound to tblStudents and a subform(continuous) bound to tblResponse. The idea is to write SQL code that, once a student number is put into the textbox, inserts the list of questions into tblResponse. All that is left to do for the user is to enter the actual answer
 

Users who are viewing this thread

Back
Top Bottom