Mysql 保存历史可编辑数据RDBMS

Mysql 保存历史可编辑数据RDBMS,mysql,database,database-design,rdbms,database-schema,Mysql,Database,Database Design,Rdbms,Database Schema,我想做一个像应用程序一样的测试系统。每个问题都有一个或多个不同的答案(一个或多个答案可能是正确的)。很抱歉,老师和学生使用了我的考试系统。这意味着导师可以对主题、问题和答案进行CRUD操作。但在这种情况下,保存版本是一个大问题。例如,我是一名导师,我决定编辑一些问题或答案(或者可能是几个问题和几个答案)。当我以学生身份进入时,我想得到一个问题列表,其中我犯了错误,但导师已经编辑了这个问题,我得到了错误的信息 主要问题:如何在数据库中保存可编辑数据 每个测试都有问题,每个问题都有答案。导师可以编

我想做一个像应用程序一样的测试系统。每个问题都有一个或多个不同的答案(一个或多个答案可能是正确的)。很抱歉,老师和学生使用了我的考试系统。这意味着导师可以对主题、问题和答案进行CRUD操作。但在这种情况下,保存版本是一个大问题。例如,我是一名导师,我决定编辑一些问题或答案(或者可能是几个问题和几个答案)。当我以学生身份进入时,我想得到一个问题列表,其中我犯了错误,但导师已经编辑了这个问题,我得到了错误的信息

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

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


以下是我到目前为止的想法。这个解决方案非常复杂,我觉得有更好的方法来解决这个问题。

我看不太清楚你的设计,太小了。但是从你对问题的描述中我了解到,我会创建一个新的表格来保存正确的答案,并将它链接到学生写的每个答案。我会使用一对多关系,这样我就可以为同一个答案编写多个更正,从而使用户能够看到导师的多个回答。

我认为这个问题更适合,因为它有点本地化。一般的答案是“使用日志记录”或“实现某种带有时间戳的版本控制”,但我想您正在寻找更具体的内容。