3

我正在设计一个系统,其中将包含对用户帖子的编辑历史。我预计大约 1/3 的用户发布的帖子包含某种类型的编辑。其中大多数只有少数几个版本。达到两位数将非常罕见。

在数据库中表示这些数据的最佳模式是什么?我应该有哪些表,它们应该存储什么?

4

1 回答 1

4

我设想的架构是有一个 Posts 表和一个 History 表。当有人第一次发布他们的初始帖子时,它只会进入 Posts 表。然后,如果他们或其他用户稍后编辑该帖子,则在“历史记录”表中创建两个条目:一个用于原始版本,另一个用于编辑后的版本。同样,帖子表将使用最新信息进行更新。额外的编辑将在 History 表中生成一个新条目,并更新 Posts 表。

我看到的一个问题是当前版本最终在两个表中都重复了,但我认为将用户与其编辑相关联的便利性使得这值得。

于 2010-09-11T03:24:10.283 回答