Oracle创建ER图和数据字典


Answers:



9

尽管我承认,我们正在使用Sybase的PowerDesigner,但对于您想要的功能而言,它却过于强大。我们一直在支持我们的全部软件工程工作,包括绘制用于需求收集的用例图,捕获那些需求,概念和物理模型(数据库,面向对象的代码,基础结构等),需求/功能验证矩阵...

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

不要被“ Sybase”这个名字所迷惑-它支持许多主要的RDBMS和UML图表格式,并且具有所有模板。它是一个非常酷的工具。


6

免费的oracle sql开发人员数据建模器效果很好。请注意,这是与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脚本将其放入数据库中更快,然后将其拉出,而不是单击每个对象,它会更快。Google的“ oracle sql注释”以获取有关其工作原理的详细信息。


5

我知道SQLServer可与Visio一起使用。我不确定甲骨文公司是否这么做,也从未尝试过,但是Visio有很多技巧。

另外,如果您经营的是相当大的企业,则Visio并不难获得一份副本,尽管许可证可能有些丰富。但是,在相当大的企业中,专业团队通常已经拥有Visio,所以这没什么大不了的。

如果任何人都可以否认或确认Visio会像对SqlServer一样对Oracle执行此操作,那真是太棒了。


Visio带有Oracle驱动程序-您可以使用它对Oracle数据库进行反向工程。请注意,您需要Visio Pro才能使用数据库反向工程功能。visio的另一个不错的功能是您可以重新添加数据库中缺少的FK关系。这使结构更加清晰。您也可以从同一存储库制作多个图以说明模型的不同部分。
ConcernedOfTunbridgeWells,

今天我学到了……
jcolebrand

2

我在/programming/8140387/oracle-extract-graphical-database-representation/8149947#8149947中回答了相同的问题 。

对于免费工具,我建议使用架构间谍http://schemaspy.sourceforge.net/。它需要Java运行时。查看http://schemaspy.sourceforge.net/sample/relationships.html以查看其生成的图表。

下面给出了使用oracle hr模板的简单用法。

SET JDBC_ORACLE_JAR=C:\oracle\product\10.2.0\client_1\jdbc\lib\ojdbc14.jar
SET CONNECTION_USERNAME=hr
SET CONNECTION_PASSWORD=hr
SET TNS_DATABASE_NAME=orcl
SET SCHEMA_NAME=HR
SET TABLE_NAME='EMP'
SET OUTPUT_NAME=HR_EMP

java -jar schemaSpy_5.0.0.jar -dp %JDBC_ORACLE_JAR% -db %TNS_DATABASE_NAME% -o     schemaOutput%OUTPUT_NAME% -u %CONNECTION_USERNAME% -p %CONNECTION_PASSWORD% -i %TABLE_NAME%.* -schemas %SCHEMA_NAME% -hq -noviews -loglevel severe

java -jar schemaSpy_5.0.0.jar -dp %JDBC_ORACLE_JAR% -db %TNS_DATABASE_NAME% -o     schemaOutput%OUTPUT_NAME% -u %CONNECTION_USERNAME% -p %CONNECTION_PASSWORD%  -schemas %SCHEMA_NAME% -hq -noviews -loglevel severe

第一个将为您提供以EMP开头的表的图表。第二篇将为您提供hr模式中所有表的图表。


我想问一个问题。处理重复的问题和答案的礼节是什么?
Atilla Ozgur

1

我们使用Dataedo为所有数据库-Oralce和SQL Server生成数据字典和ERD。您只需连接到数据库,将架构导入到存储库中,就可以使用UI描述每个元素。该工具可将大型数据库拆分为逻辑模块,定义缺失的FK和UK,使用富文本格式并粘贴图像。使用物理和逻辑FK工具可创建简单的ERD。

每次数据库架构更改时,您都可以导入这些更改,它们会自动反映在存储库中。

带有ERD的数据字典将导出为PDF或交互式HTML。

我是Dataedo的产品经理。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.