Oracle 创建 ER 图和数据字典

Sco*_*ott 19 oracle database-design

我是 Oracle 数据库的新手,想为我们现有的数据库开发数据字典和 ER 图。您有任何提示、脚本和工具吗?

Gar*_*ary 21

Oracle 的数据建模器可以对现有数据库进行逆向工程。他们曾经为它收费,但现在可以免费使用。

  • 它与 Oracle 的 SQL Developer 3 捆绑在一起 (4认同)

Sco*_*her 9

尽管我承认,我们正在使用Sybase 的 PowerDesigner,但它对于您想要的东西来说过分了。我们用来支持我们完整的软件工程工作,从为需求收集绘制用例图、捕获这些需求、概念和物理模型(数据库、面向对象的代码、基础设施等)、需求/功能验证矩阵……

基本上任何面向 UML 的东西都可以帮助我们从 IT 的角度发现、构建、跟踪和实施业务解决方案。

不要被“Sybase”这个名字所迷惑——它支持许多主要的 RDBMS 和 UML 图格式,并为它们提供了模板。它是一个非常酷的工具。


小智 6

免费的 oracle sql developer 数据建模器运行良好。请注意,这是一个单独的下载,而不是与 sql developer 捆绑在一起的下载。sql developer中的数据模型工具没有那么多功能。

http://www.oracle.com/technetwork/developer-tools/datamodeler/overview/index.html

它有一些视频演练。

文件-> 导入-> 数据字典。您添加到数据库的连接并决定要逆向工程的内容。

请注意,模型部分将是一团糟,并且需要您花时间使其足够整洁以供阅读。当 oracle 逆向工程师时,它会为您提供物理模型而不是 ERD。您可以将物理模型更改为 ERD。但是,大多数人不知道 ERD 是什么,认为 ERD 是物理模型。ERD 在您的数据模型存在的阶段具有最小的价值。没有很好的理由保留一个物理模型(这对开发人员来说更容易阅读)和一个 ERD。

至于数据字典...这通常意味着有关您的数据模型的文档。最好的方法是使用该工具并使用“注释”命令。Oracle 允许您为所有表、列和对象创建注释并将它们存储在数据库中。通过这种方式,您可以在可查询的数据库中拥有文档。Sql Developer 数据建模器可以查询这个。

您可以在 GUI 中执行此操作,但我发现使用“注释”命令并将其从 sql 脚本放入数据库中会更快,然后将其拉出,而不是单击每个对象。谷歌“oracle sql comment”了解其工作原理的详细信息。


jco*_*and 5

我知道 SQLServer 可以与 Visio 配合使用;我不确定 Oracle 是否这样做,从未尝试过,但 Visio 有很多技巧。

此外,如果您的企业规模相当大,Visio 的副本并不难获得,尽管许可证可能有点贵。但是相当大的企业中的专业团队通常已经拥有 Visio,所以这没什么大不了的。

如果有人可以否认或确认 Visio 会像对 SqlServer 那样对 Oracle 执行此操作,那就太棒了。