【发布时间】:2011-01-22 13:40:16
【问题描述】:
我希望允许用户标记项目,以便他们可以使用标记搜索它们。干净地实现这一目标的最佳方法是什么?到目前为止,我提出的解决方案只涉及在我当前的数据库系统中添加两个额外的表。
<db Trackable product 1>
int id;
info etc
</>
<db Trackable product 2>
int id;
info etc
</>
//defines the M:M relationship between Tag and various types of Trackable products
<db TagLink>
int trackableProd1Id
int trackableProd2Id
int tagId
</>
<db Tag>
int tagId
tag name etc
</>
这是一个好方法吗?这种方法的一个好处是它应该可以很好地扩展,并且它还允许我在将来通过简单地向 TagLink 表中添加一个列来添加更多可跟踪的产品。如果我计划跟踪 10 个表,这显然不是一个好主意,但对于多达 3-4 个表,它应该证明工作良好,不是吗?
【问题讨论】: