我应该存储有关数据库中的数字记录的信息吗?

时间:2016-08-02 17:12:32

标签: database database-design

当我们查看一些Stack Overflow主题时,我们会在URL中看到一个可以找到许多问题的路径。

示例:questions/38726547/title

我们可以看到号码38726547并且我想做类似的事情,但我的问题是 - 我应该在保存一些数据时将该号码存储在数据库中(在保存之前我会算一下所有当前添加的数据并按1)增加?

示例:

question:
  title: "blabla",
  number: 3213

或者从数据库获取数据并计数时可能会检索该信息?在我看来,存储有关数字的信息更容易,我不必每次都进行计算。我想问你什么是更好的做法。

1 个答案:

答案 0 :(得分:1)

此号码用于唯一标识帖子,因此可能应保存在数据库中。

首先,您要保存它以优化查询(=搜索)。

其次,将其保存为数据库中的主键将允许您使用外键使其他表(例如注释)依赖它。

第三,保存它将允许您以后更改数据库的自由。例如,假设您的数据库变得太大,并且您想要清除旧的已删除主题。如果您决定删除问题12,您仍然希望问题3指向相同的帖子,无论它现在是什么&& #34;第一"数据库中的问题。