【发布时间】:2012-01-06 23:14:33
【问题描述】:
在我正在开发的项目中,我有几个“通用对象”,它们跨越并关联了其他几个表。
例如,考虑对象“评论”。它应该适用于多种不同的对象:一张照片、一个动作、一个事件……并且它始终具有相同的结构(作者、文本、插入时间……)
我采用的第一个解决方案是为每种评论创建单独的表格:PhotoComments、EventComments 并将它们与相关对象关联起来,并与(例如)photo_id 列建立一对多关系。
第二个(也是当前一个)包含一个单独的 Comments 表(每个都有自己的 id),并有尽可能多的“多对一”支持表来将这些 cmets 与(即)他们的照片相关联。
这样的设计有什么缺点吗?
【问题讨论】:
-
您的问题是针对您的哪个设计?
标签: sql database-design relational-database database-schema