gpt4 book ai didi

database - UML 中的继承对您的 ERD 有什么作用?

转载 作者:搜寻专家 更新时间:2023-10-30 20:13:06 27 4
gpt4 key购买 nike

我为一个系统创建了一个类图,现在我必须将它建模到一个真实的系统中。这意味着将其转换为数据库。

现在有一个只有几个属性的基类,但是有很多类继承自它。现在,我的转换 list 显示我必须为每个类(class)创建一个表格。

我不知道如何处理继承,我可以看到关联是通过 PK 和 FK 完成的,但是子类呢?

是否有一些文章可以解决这个问题,或者有人可以向我解释一下?

提前致谢

最佳答案

您可以通过三种方式将类层次结构转换为关系表:- 只为父类(super class)创建一个表(子类的所有属性和关联都移动到与父类(super class)对应的表中,可能取NULL值)- 只为子类创建表:父类(super class)的所有属性和关联在每个子类中重复- 为父类(super class)和每个子类创建表。在这种情况下,子类的 PK 在同一张表中是父类(super class)的 FK(这确保子类表中的所有标识符都对应于父类(super class)表中的现有标识符。两个表之间的连接允许恢复完整信息元素的)

最佳策略取决于问题(例如,每个类中的属性数、层次结构中的级别数、层次结构是否不相交,...)

如果您想查看一些示例,可以将层次结构上传到 UMLtoDB 在线服务 http://modeling-languages.com/content/uml2db-full-code-generation-sql-scripts-databases

关于database - UML 中的继承对您的 ERD 有什么作用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3318233/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com