【问题标题】:Can Erwin "guess" relationships during reverse engineering (there are no PK/FKs defined in db)Erwin 可以在逆向工程期间“猜测”关系吗(db 中没有定义 PK/FK)
【发布时间】:2013-01-16 14:12:36
【问题描述】:

我们正在着手进行遗留数据迁移项目,在更好地了解我们的源数据库的过程中,我们正在尝试从中构建一个数据库模型。

我们没有关于数据库中主键/外键的任何信息。我们仍在挖掘 COBOL 代码以更好地了解业务。

但是,在我们构建数据库模型的过程中,我们正在尝试查看 ErWin 或 PowerDesigner 等工具是否可以帮助我们根据列名等“猜测”关系。我下载了社区版,并尝试逆向工程过程,看看我们是否可以获得一些有价值的输出,然后我去请我的经理申请购买该工具。

到目前为止,我还没有取得任何成功。尝试了询问使用索引/名称查找关系的选项,在那里选择了名称,但到目前为止没有。

有没有可能,但我错过了什么? 是否完全可以根据列名猜测关系? 任何其他工具都可以完成这项工作吗??

感谢任何帮助...

【问题讨论】:

  • 软件使用的是哪个数据库?您可以将示例导出为文本并在此处显示吗? (表、行和引用表)
  • 我们正在处理 z/os 上的 db2。表具有编码名称..例如cbt00001 或类似的东西...我们无权访问数据字典,因此无法查询该环境以获取更多信息...

标签: reverse-engineering data-modeling


【解决方案1】:

您应该能够从 DB2 表直接逆向工程到 ERWIN。

您只需连接到 DB2 或获取 z/Os dba 即可为您提供 DDL。

当您需要的所有信息都在 DB2 目录表中时,我认为猜测关系并不是一个好主意。与 DBA 交谈。

【讨论】:

  • 尽管我想按照您的建议去做,但还是有成本的(获取 db2 connect,IBM DB2 的驱动程序)。它只是不可能(商业上),仅此而已为什么我们不得不开始考虑以其他方式做这件事。感谢您的意见...
  • 您的 DBA 应该能够为当前系统提供 DDL。无需 DB2 连接。
【解决方案2】:

您能否提供更多信息/示例。在 Cobol 中通常有一个命名约定 (例如,表 ID 包含在字段名称开头/结尾的字段名称中)其中 案例

T1234_Product_code

等价于

T1323_Product_ID
T1245_Product_Code

我建议调查(如果您还没有)任何命名约定。

【讨论】:

  • 感谢您的咨询。我们无法得出任何有意义的命名约定(至少在表的列名中)。
猜你喜欢
  • 2012-08-25
  • 1970-01-01
  • 1970-01-01
  • 2011-12-21
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-09-29
  • 2010-12-15
相关资源
最近更新 更多