• mtassin (8/31/2010)


    RalphWilson (8/30/2010)


    A "skipped" question is one that has not been answered but has a Question Number that is lower than the highest Question number that has been answered.

    Why not just store the results as the questions are asked?

    Table_Answers(

    Answerid int identity(1,1) PRIMARY KEY,

    Testid int NOT NULL,

    questionid int NOT NULL,

    TestAnswer int,

    TestScore int NOT NULL)

    As the questions are asked and answered/skipped just store either

    1 in testscore if it's correct

    -3 in testscore if it's wrong

    -1 in testscore if it's skipped

    Then left join Table_Answers to Table_questions if you care about the unanswered questions.

    If Testanswer can be more than multiple choices throw in a varchar(max) or nvarchar(max) column for the free form answers... but those will be harder to grade via SQL anyway.

    To put it mildly, that really screws up trying to do any overall input and analysis of the test results because the input process is a specialized reader for those Mark The Bubble tests. There is a key premarked on the sheet that mtaches the sheet tot he particular set/arrangement of questions that were answered. So, it becomes a bit more awkward to try to snag which questions were skipped on the fly . . . the reader application simply reads the sheets and records the answers as a row in a table for the most part. The essay questions are handled slightly differently but most of the tests (and the majority of all tests) are either T/F or multiple choice (usually 5 options . . . with the odd 4 option question often getting option 5 selected ;-).

    Ralph D. Wilson II
    Development DBA

    "Give me 6 hours to chop down a tree and I will spend the first 4 sharpening the ax."
    A. Lincoln