如何将EER转换为SQL表?

时间:2010-04-15 19:42:53

标签: sql database inheritance modeling entity-relationship

将ER转换为SQL表没有问题,但我不知道如何将EER转换为SQL表? 如您所知,EER具有“是一个”规范和继承,但我不知道关系数据库如何与继承规范连接

3 个答案:

答案 0 :(得分:1)

我不确定如何在一个用户操作中将所有EER转换为SQL表,但这应该有效:

  • 右键单击表格,
  • 将表创建脚本复制到剪贴板
  • 将此脚本粘贴到shell命令中。

这将创建表格。

希望这有帮助。

答案 1 :(得分:0)

我想看看Hibernate storage strategies

Hibernate是一个ORM系统,它将对象保存在SQL数据库中。在我发送给您的链接中,它为您提供了一个表模式,用于说明SQL数据库中存储策略的持久性。

如果您使用AppfuseGroovy,则可以为您生成这些关系。

然后,您可能希望将架构映射到某种CASE工具,以将其转换为实体关系图。

答案 2 :(得分:0)

最简单的答案是:
子类型表将使用超类型的id作为其id。这将保证子类型'是'超类型,而不是子类型'与'超类型相关联 还有其他规则可以转换EERD泛化/专业化层次结构(如果您有兴趣,请回复,我会向您发送链接以了解所有规则)。但是,大多数情况下,遵循两条规则将会起作用

  1. 为超类型创建关系,为每个子类型创建每个关系,子类型关系的id是超类型关系的id(此选项通常适用于所有情况)。将所有常用属性存储在超级关系中,仅在子类型中存储特殊属性。
  2. 对于“Disjoint Mandatory Specialization / Generalization Hierarchy”,您可以选择为每个子类型创建一个表(无需为超类型创建关系)。
  3. 希望这有帮助。