Hi all,

I'm currently involved in a quiz-type project that we are building in asp.net using SQL Express. We are planning to use a heavily normalised database structure. A quiz has several different sections, and we are going to have each section in a seperate table, linked to a main 'quiz' table which pulls together all the sections of the quiz.

Our client requires that these quizzes are version controlled to a point that if a quiz is changed, it goes up a version. Pretty simple. However my question is what happens to a student who is currently completing this quiz that has been edited? I don't want the quiz to change half way through when the student is completing the quiz.

These quizzes could take up to 6 months for a student to complete (they dont do it all at once) so its not an option to wait till all the students complete a particular quiz and have the changes take effect.

If possible, it would be good to have the currently enrolled students still complete their quiz on an older version, but then i'd need to have a copy of each new version quiz on the database right? Alot of unused and unneeded data would be copied. + I wouldnt even know about how to copy the quiz data from multiple relational tables.

Please help if possible, reallllly stuck on this one!