有一张大桌子还是应该用几张?

有一张大桌子还是应该用几张?

问题描述:

我正在构建一个新的应用程序,它具有许多数据对象,每个应用程序都需要“历史记录”或备注。在过去,我刚刚创建了一个名为notes的数据库表,并将多个外键附加到不同的对象。这一次我想要别人的想法。使用一个具有不断增加的auto_inc ID的表是否是好的做法/有效率,还是应该维护不同的[object]_notes类型表?有一张大桌子还是应该用几张?

N.B. Notes对象本身始终是相同的,主题,文本,日期等。

+1

您应该使用一张表。 – ulidtko 2011-02-05 09:46:00

我只使用1个表。我认为我们不是在谈论历史笔记的嘘声?

如果没有,那么1台就好了

我想你问的问题是,如果一个自动递增ID是一个很好的主键复合自然键,或2个实体组成的关键。

除非您有足够的理由这样做,否则我会坚持使用自动增量主键,它具有唯一的索引,因此为查找查找进行了优化。您仍然可以对复合键执行索引。有些人实际上更喜欢这种方式,因为可以认为它通过在每个表上没有额外列来使得关系更清晰,但对于小型应用程序和数据集,我不担心这一点,只使用autoincrement选项。