关联关系

关联关系还可以细分为聚合和组合(二者的具体概念读者自行搜索)。

       发现聚合、组合可以从另一个角度去理解。

       先说说聚合,它是一种弱关联,大概意思就是整体和部分可以独立存在。如果我们换个角度,可以看成是数据库的级联操作。

       就拿小组和组员来说,删除某个小组的时候,把该组的组员也删除,这显然是不科学的,因为小组和组员是一种弱关联,小组可以拥有任意一个组员,一个组员也可以去任意一个小组,这个小组不存在了,可以去另一个小组,它们没有必然的关联,可以称为聚合。

       因此,我们在设计数据库的时候,往往不会设置级联删除,也就是说,删除小组时不会删除组员。

       UML图表示如下:

       空心菱形表示聚合,指向one端。

       再说说组合,组合是一种强关联,大概意思是整体和部分不可分割,不能独立存在。同样从级联操作理解。

       就拿学生和学生证来说,假如某个学生退学,不再属于这个学校,那么可以考虑将该学生信息删除,删除的时候,学生对应的学生证信息也会被删除,在此处可以加级联删除。因为学生证属于某个学生专有的信息,学生不存在了,学生证又不能让他人使用,因此是一种强关联,可以称为组合。

       UML图表示如下:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值