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

时间:2010-04-24 08:39:23

标签: database-design

我需要制作无法编辑的文章,但可以保存为新版本,只向用户显示最新版本。我该如何实现这种数据库设计?

2 个答案:

答案 0 :(得分:2)

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

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

答案 1 :(得分:0)

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

您可以设置一个“currentVersion”,并在旧版本和新版本上关闭它。您也可以使用日期时间“dateCreated”来获取最新版本,因为您从未计划编辑它们。