ER和类图是否有任何关系?

时间:2014-05-18 12:09:53

标签: uml entity-relationship class-diagram

我可以通过将实体转换为类来直接将我的ER图转换为类图吗?

2 个答案:

答案 0 :(得分:3)

几乎。

OO类图比ER图更抽象,功能更多。 ER图是OO图的一种实现方式。

  • 大多数独立表可以直接转换为具有相应属性的OO类
  • 聚合表(仅包含FK的表)将映射到相应表/类之间的N-N关联。
  • FK映射到1-N和1-1关联
  • 也可以寻找一些表格及其键来发现可能的遗产
  • 取决于进一步的FK限制,关联也可以是组合

互联网上有很多或者有这方面的信息,只是谷歌“将面向对象的数据模型转换为关系数据模型”。

答案 1 :(得分:0)

有些技术允许您在数据模型(如实体关系和OO类)之间进行几乎自动转换,反之亦然。但是,如果您想要正确的结果,请不要这样做。在数据建模方面,您有关系模型(用于关系数据库的设计),ER模型(更丰富,更高级别的技术,添加语义)或事件更好的方法,如NIAM和ORM。但面向对象分析是一个完全不同的世界,另一种思维方式允许您创建非常复杂的模型。我喜欢将ER图和OO类图视为两种替代方法。所以如果您想将ER模型转换为OO模型,请重新考虑您的分析。要将关系数据库反向工程为OO类图,请确保手头有完整的逻辑/概念分析文档,因为在实现过程中会丢失大量信息。 顺便说一句:双重映射OO类到实体到关系可能很诱人,因为某些工具支持这种方法作为一种快速而肮脏的方法,但我绝对不会推荐它。