有些书将它描述为A类和B类之间的1:m关联,在钻石端有一个隐含的0..1标签,而其他书则将其视为1:1,1:m或m:n整体 - 部分协会。哪一个是正确的?
谢谢!
答案 0 :(得分:0)
所有版本都是正确的,它们的聚合键不是基数(1:1,1:m或m:n)它可以包含你提到的任何一个。
关键是,即使是B的实例在A的实例中,如果你破坏A,B仍然存在。
例如:当公司消失(聚合)时,公司的客户和客户仍然存在,但当公司消失(组合)时,员工不会成为员工。不是我最好的比喻,但我认为有足够的代表性。
就像在数据库中一样,对我来说这个观点更加清晰,一个带有外键的表将是聚合,而关系表就是第三个表。