比方说,我在数据库中存储了两个不同的实体,比方说一个是直接消息,另一个由于某种原因我是一个不知道的文章。两者都存储在相同的数据库中,但表不同。现在假设我希望用户能够在“直接消息”或“文章”中添加类似于Github和Discord的“反应”。
对于直接消息或文章,这些“反应”非常相似,因此我应该将它们放在同一表中,并允许它们通过枚举附加到任一实体吗?还是应该将它们放在不同的表中?假设我也希望用户也喜欢Articles,这基本上是一种“反应”,但没有表情符号。应该是它自己的表还是与“反应”相同的表?我只想知道在这里画线。
我当前的想法是在同一个表中包含“反应”和喜欢的事物,它们是什么以及它们所指的事物与枚举有所区别。我问这个问题是因为我第二次猜测自己这个决定。
两个实体在数据库中应该有多大的相似性才能证明将它们组合成一个表?