单表继承还是类表继承?(涉及IT技术)

11
2个回答

6
我想向您推荐一篇非常好的文章,它清晰地解释了何时以及为什么要使用CTI。 LINK

1
另外,你给我的另一个链接是http://peterhamilton.github.com/citier/,里面有很多关于这个的博客链接。谢谢。 - SpaceGhost
@SpaceGhost 这里没有 GitHub Pages 网站。 - 王奕然

0

像你说的那样,使用STI来处理行为差异。我会举一个例子:

你有Purchase和PartialPurchase,数据唯一的区别在于当PartialPurchase完成时,它会与新创建的Purchase建立关系。

因此,行为是不同的,而且有些情况下,我希望PartialPurchase和Purchase同时出现在同一个查询中。对于商业代理人来说,他们希望同时看到所有的购买和部分购买,因此将这些数据放在同一个表中是有意义的。否则,每个模型的所有属性都是相同的。

在这种情况下,我会使用STI而不是CTI。

但是,如果数据开始有很大的差异,我可能会创建另一个与STI表相关联的表,在许多不同字段的情况下,我可能会考虑使用CTI。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接