mysql数据库类图怎么制作_uml与数据库设计

一、类之间的关系如下图所示:

8c456d8ae741c4c18caf72faf6eadf3c.png

二、UML与数据库设计主要讨论的内容:

9616faab903ad60803a14f5d3665bbd1.png

三、依赖关系强调的是类操作间的使用关系,类图到表结构的映射中并不涉及这种关系,所以只需讨论泛化关系、关联关系到表的映身规范。

1.泛化关系的映射

(1)、将父类和子类均映射为表

优点:表结构的更改非常方便

缺点:表的数量较多,相关的数据分散在不同的表中,数据读写时间较长,报表的生成较为困难。

(2)、只将子表映射为表

优点:表的数量较少,相关的数据集中在一个表中,数据的读写较为方便。

缺点:表结构的修改较为困难,因为修改父类后,要同时修改子类对应的表。

(3)、只将父类映射为表

优点:表的数量少,数据读写方便

缺点:耦合性强,需要增加一列,以表时类的角色,浪费存储空间较多。

综合:以上三种方法各有所长,在实际应用中,根据具体情况选用。

一般情况下,建议选用第二种方式,即只将子类映射为表,各表包含子类自身的属性和继承自父类的属性。

2.关联关系的映射

关联关系分为一对一关联、一对多关联和多对多关联。

(1)、一对一关联映射

将相关的两个类分别映射成两张表,并将任意一张表的主键放入另一张表作为外键。

(2)一对多关联映射

将关联的两个类映射为两张表,并将“一”表的主键放在“多”表中作为外键。

(3)、多对多关联映射

》为相关联的两个类分别建立两张表

》再建一个关联表。这个关联表的属性由两部分组成:前两个表的主键,关联本身的属性。

综合:关联关系要为每一个类生成一个数据库表。

关系映射:

1)、一对一、一对多的关系映射为数据库表的主外键关联(一方的主键加入另一方成为外键)

2)、多多的关系映射:产生第三张表,将两个多方的主键加入其中成为外键,两个外键的组合成为主键。

利用数据库三范式检查表,从而考察类图的分析是否合理,消除冗余数据。检查数据是否能够反映用例视图的需要;进一步与用户再次确认数据的使用。

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值