如何使用Oracle SQL Developer生成实体关系(ER)图


372

我想使用Oracle SQL Developer为我的数据库表生成ER图,但是我对Oracle和该工具并不熟悉。

在SQL Developer中创建ER图的过程是什么?


1
您也可以使用dbForge Studio for Oracle中的ER图工具来完成此操作。尝试免费的Express版本。
Devart

Answers:


502

为现有数据库架构或其子集创建一个图,如下所示:

  1. 单击文件→数据建模器→导入→数据字典
  2. 选择一个数据库连接(如果没有,则添加一个)。
  3. 单击下一步
  4. 检查一个或多个架构名称。
  5. 单击下一步
  6. 检查一个或多个要导入的对象。
  7. 单击下一步
  8. 点击完成

显示ERD。

如下导出图:

  1. 单击文件→Data Modeler→打印图→到图像文件
  2. 浏览并选择导出文件位置。
  3. 点击保存

该图已导出。要以矢量格式导出,请改用“ 到PDF文件”。这允许使用Inkscape(或其他矢量图像编辑器)进行简化的编辑。

这些说明可能适用于SQL Developer 3.2.09.23至4.1.3.20。


1
对我不起作用。SQL Developer 3.2.20.09不会显示所有表,但是会显示其他对象,例如视图等。有什么想法吗?
孙建功

1
@sataniccrow:同意,sql开发人员工具通常不易于使用且容易出错,使任何工作都很痛苦。但另一方面,它具有许多功能。
tbraun

创建ER模型时,创建新数据库连接时遇到问题。在选择TNS作为连接类型时,“网络别名”下拉列表没有在我的tnsnames.ora文件中显示预期的条目。为了解决这个问题,我将“连接类型”选择为“基本”,然后从tnsnames.ora文件中输入了所需的主机名,端口和服务名值,否则该文件将起作用。可能有一个地方可以为SQL Modeler指定tnsnames.ora文件,但是我无法通过SQL Developer找到任何这样的地方(工具->首选项->数据建模器)。之后事情很简单。
DiligentKarma 2014年

2
旁注:您必须在Data Modeler工具内部,否则“ File”菜单上的“ Data Modeler”将不可用。
Necreaux 2015年

假设我生成了图表,然后更新了源表之一。如何“刷新”图表以显示对源表所做的更改?
takanuva17年

120

从SQL Developer 3开始,它非常简单(它们本来可以使它更容易)。

  1. 转到“查看→Data Modeler→浏览器”。浏览器将显示为左侧选项卡之一。
  2. 点击 “浏览器”选项卡,展开设计(可能称为Untitled_1),右键单击“关系模型”,然后选择“新关系模型”
  3. 右键单击新创建的关系模型(可能Relational_1),然后选择“显示”
  4. 然后只需将所需的表(例如,从“连接”选项卡中)拖到模型上。请注意,当您单击“连接”选项卡中的第一个表时,SQLDeveloper会在右侧打开该表:从左侧选择所有表,然后确保在Relational_1拖动它们之前,选项卡(或任何名称)在rhs中处于活动状态,因为它可能已切换到您在lhs中单击的表之一。

2
听起来很简单-但很可悲-拖放对我不起作用(WinXP / SQLDesigner 3.2.09)。有什么建议吗?
巴斯蒂安·埃伯林

您正在使用SQL Designer还是SQL Developer?
lintmouse 2012年

我使用Oracle SQL Developer感到抱歉,这是在编写SQLDesigner之前的错字。
巴斯蒂安·埃伯林

只是在这里留言,因为我花了半个小时才弄清楚如何将图表导出为png或pdf。而且我不愿意在下次需要此功能时再次这样做(...这不是第一次)。无论如何,该过程如上述
@Sergei

40

Jeff Smith在《Oracle杂志》中描述了在Oracle SQL Developer中生成实体关系图的过程(链接)。

摘抄:

实体关系图

实体关系图

入门

要遍历该示例,您需要一个具有示例HR模式的Oracle数据库实例,该示例在默认数据库安装中可用。您还需要使用Oracle SQL Developer 4.0版,在该版本中,您可以通过Data Modeler子菜单访问Oracle SQL Developer Data Modeler。或者,您可以使用独立的Oracle SQL Developer Data Modeler。两种实现中的建模功能相同,并且都可以从Oracle技术网免费下载。

在Oracle SQL Developer中,选择查看->数据建模器->浏览器。在“浏览器”面板中,选择“关系模型”节点,单击鼠标右键,然后选择“新建关系模型”以打开空白模型图面板。现在,您与使用独立Oracle SQL Developer数据建模器的人在同一地点开始。导入数据字典

导入数据字典

Oracle SQL Developer数据建模器中的设计由一个逻辑模型以及一个或多个关系和物理模型组成。要开始创建设计的过程,必须从现有数据库中导入模式信息。选择文件->数据建模器->导入->数据字典以打开数据字典导入向导。

单击添加以打开“新建->选择数据库连接”对话框,并以HR用户身份进行连接。(有关从Oracle SQL Developer创建连接的详细信息,请参见《 Oracle杂志》,2008年5月/ 6月,“进行数据库连接”。)

选择您的连接,然后单击下一步。您会看到可以从中导入架构的列表。在“过滤器”框中键入HR以缩小选择列表。选中HR旁边的复选框,然后单击Next。

阅读更多...


38

对于使用Oracle数据库的类图,请使用以下步骤:

文件→数据建模器→导入→数据字典→选择数据库连接→下一步→选择数据库->选择表格->完成


24

您可以查看一个名为Oracle Data Modeler的配套工具。有在线演示该站点上,可帮助您入门。它曾经是增加成本的项目,但我再次注意到它是免费的。

在“数据建模器”概述页面中:

SQL Developer Data Modeler是一个免费的数据建模和设计工具,可证明各种数据以及数据库建模工具和实用程序,包括实体关系图(ERD)建模,关系(数据库设计),数据类型和多维建模,正向和反向工程以及DDL代码生成。Data Modeler从各种来源和目标导入和导出,提供各种格式设置选项,并通过一组预定义的设计规则来验证模型。


6
SQL Developer版本3包括Data Modeler,但独立版本更易于使用,因为您不必深入菜单即可查找与建模器相关的项目
Gary Myers

7

Oracle以前在SQL Developer中有一个名为 Data Modeler。从3.2.20.10起,它不再存在于产品中。

现在是单独的下载,您可以在这里找到:

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


从2019年开始(SQL Developer 19.2),该功能已明确内置,尽管可以在“管理功能和更新”(工具/功能)中启用和禁用它。
阿瓦罗·冈萨雷斯

1
是的,我希望Oracle能够在这一方面下定决心。每次我寻找新版本时,它都会移到“更好”的位置
BIBD


3

我正在运行SQL Developer 17.2.0.188构建188.1159,它确实包含数据建模功能。我刚刚通过菜单创建了一个关系模型图: File-> Data Modeler-> Import-> Data Dictionary ...

我也有独立的Data Modeler,它执行相同的操作。

正如Data Modeler教程所述:

图4:HR的关系模型和图表

您生成的图不是ERD。逻辑模型是更高的抽象。ERD表示实体及其属性和关系,而关系或物理模型表示表,列和外键。

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.