Database design 维基百科风格的文章,我应该如何设计我的数据库?

Database design 维基百科风格的文章,我应该如何设计我的数据库?,database-design,Database Design,我需要使文章不能编辑,但它可以保存为新版本,只有最新版本显示给用户。我应该如何实现这种数据库设计?有几种方法可以解决这个问题。我认为最直接的方法是创建一个表“article”,其中包含创建文章时的所有数据(例如id),第二个表包含每个编辑版本的“articlevision”。article将与articleVersion具有一对多关系 您可以设置一点“currentVersion”,然后在旧版本上关闭它,在新版本上打开它。您也可以使用datetime“dateCreated”来获取最新版本,因为

我需要使文章不能编辑,但它可以保存为新版本,只有最新版本显示给用户。我应该如何实现这种数据库设计?

有几种方法可以解决这个问题。我认为最直接的方法是创建一个表“article”,其中包含创建文章时的所有数据(例如id),第二个表包含每个编辑版本的“articlevision”。article将与articleVersion具有一对多关系


您可以设置一点“currentVersion”,然后在旧版本上关闭它,在新版本上打开它。您也可以使用datetime“dateCreated”来获取最新版本,因为您从未计划编辑它们。

数据库可以在文章的每个版本上都有版本号或时间戳,您只需提供最新的文章(最高版本号或最新时间戳)


为了获得最佳结果,请使用反向代理缓存,以避免每次点击时都触碰数据库。

这方面的好搜索关键字是,会产生许多相关问题。结果似乎很好地覆盖了这一领域。肯定比我建议的currentVersion或dateCreated要好。