保存历史记录可编辑数据RDBMS

时间:2012-11-05 15:03:09

标签: mysql database database-design rdbms database-schema

我想制作像测试系统一样的应用程序。每个问题都有一个或多个答案变体(一个或多个可能是正确的)。我很抱歉导师和学生使用我的测试系统。这意味着导师可以使用主题,问题和答案进行CRUD操作。但在这种情况下出现了一个大问题,即保存版本。例如,我是一名导师,我决定编辑一些问题或答案(或者可能是几个问题和几个答案)。当我作为学生进入时,我想得到一个我犯错误的问题清单,但是导师已经编辑了这个问题而且我得到了错误的信息。

主要问题:如何在数据库中保存可编辑数据?

My database

每个测试都有问题,每个问题都有问题。导师可以编辑/添加/删除任何这些组件。例如,他或她可以修改其中一个任务的文本,在测试中添加几个问题,并编辑刚刚修改过的问题的答案之一。任何提示我如何处理所有这些以便我可以在过去的确切时间检索一个版本的测试?

到目前为止,我已经提出了这个问题。解决方案非常复杂,我觉得有更好的方法。

1 个答案:

答案 0 :(得分:0)

我无法很好地阅读你的设计,太小了。但是从我对你对问题的描述中所理解的情况来看,我会创建一个新的表格来保存更正的答案,并将其链接到学生写的每个答案。我会以一对多的关系制作它,这样我就可以为同一个答案写一个以上的校正,从而使用户能够看到来自导师的多个答案..