我是Access的新手,尽管进行了数小时的在线研究,但我已经陷入困境。简而言之,我正在尝试编写一个数据库,用于存储人们在几个不同测试中给出的答案。有些人参加1次测试,有些人参加2,3次测试等。我需要为每个学生存储他们采取的测试以及他们对每个问题的答案。我觉得我当前的方法(为我的MainRecord表上的每个问题创建一个单独的字段以及每个可以采取的测试的是/否字段)是麻烦的并且导致我的最终问题:当我填充连续表单时在测试问题和相邻的组合框中输入他们的答案,我无法将组合框值转录回我的MainRecord。连续表格的数据来自一个单独的表格(Test1),该表格包含一个问题编号字段和一个查询字段,允许我选择该人的答案(即A,B,C,D,E)。
有没有更好的方法来构建我的表?如果没有,我如何将连续表单上的组合框值放到表格的不同字段中?谢谢,对不起,如果我听起来像个白痴。
答案 0 :(得分:0)
你需要研究一个更通用的结构。 这是一个应该有效的基本结构。
我对所有连续形式的东西都无法帮助
Test
test_id
TestQuestion
test_id
question_id
question_order (used for sorting)
question_text
QuestionPossibleAnswers
question_id
possible_answer_value
possible_answer_prompt
Student
student_id
student_name
// etc...
StudentTest
test_id
student_id
date_taken
// whatever
(假设学生只能参加一次考试) StudentAnswers 学生卡 question_id student_answer(将是“QuestionPossibleAnswers”中的possible_answer_value
无论如何,当学生参加考试时,我认为你的顶级表格将“绑定”到“StudentTest”表。连续形式可能基于StudentAnswer。 student_answer下拉列表需要绑定到当前StudentAnswer.question_id的可能答案(通过查询构建器)。
自从我完成Access已经多年了,所以我不能一步一步地给出,我道歉,但上面的结构非常合理(如果不是过于简单)。