我应该为类似的用法创建不同的SQL表,还是只创建一个带参数的表?

时间:2015-02-18 08:53:11

标签: php mysql sql architecture

在我的应用程序(symfony2 / doctrine 2 / mysql)中,我有一个论坛,一个博客和一个小型社交网络。

所有都需要能够发布一些内容。

我应该更好地为特定元素(blog_post,forum_post,social_post表)创建不同的表,还是只创建一个post表并将其附加到post_category表,其中包含那些forum / blog / social_network行?

这个想法是这些应用程序部分的用法和规范在稍后的某个时间点可能会有所不同,虽然暂时只有一个表可能更容易,但将它们分开可能更容易维护运行

在这种情况下,最佳做法是什么?

1 个答案:

答案 0 :(得分:0)

您可以使用Table inheritance

将抽象的Post实体作为BlogPost,ForumPost和SocialPost的父级。这样,您就拥有了具有DRY属性的独立实体。