MySQL 工作台  / 第9章数据库设计与建模  / 9.4 正向和逆向工程  / 9.4.2 逆向工程  /  9.4.2.2 实时数据库逆向工程

9.4.2.2 实时数据库逆向工程

要对实时数据库进行反向工程,请单击 数据库,然后从菜单中单击反向工程。下图显示了逆向工程数据库向导的示例。

图 9.49 逆向工程数据库向导

内容在周围的文字中描述。

向导的第一步使您能够建立到您打算进行逆向工程的实时数据库的连接。您可以设置新连接或选择以前创建的存储连接。连接所需的典型信息包括主机名、用户名和密码。

输入此信息或选择存储的连接后,单击“下一步”按钮继续下一步(如下图所示)。

图 9.50 连接到 DBMS

内容在周围的文字中描述。

查看显示的信息以确保连接没有产生错误,然后单击下一步

下一步显示服务器上可用的模式。选中您要处理的每个模式的复选框。在下图中,world选择了模式。

图 9.51 选择模式

内容在周围的文字中描述。

选择所需的模式后,单击 下一步按钮继续。

该向导然后显示它执行的任务并总结操作的结果。

图 9.52 检索对象

内容在周围的文字中描述。

在单击“下一步”继续之前查看结果。

下一步打开选择要逆向工程的对象页面。它有一个部分用于您可以导入的架构中存在的每个对象类型(表、视图、例程等)。默认选择所有对象类型。Place imported objects on a diagram选项也被默认选中 。

笔记

导入 250 个或更多对象可能无法创建 EER 图,而是会发出资源警告,其中包含文本“为自动放置选择了太多对象。选择更少的元素来创建 EER 图。” 在这种情况下,请在禁用此选项的情况下执行逆向工程向导,手动创建 EER 图,然后使用 EER 图目录查看器导入 250 多个对象。

如果您不打算从现有数据库中导入所有对象,则此步骤特别有用。它为您提供了过滤导入哪些对象的选项。每个部分都有一个 显示过滤器按钮。如果您不想导入特定类型的所有对象,请单击此按钮。下图显示了打开过滤器的表对象部分的示例。

图 9.53 选择对象

内容在周围的文字中描述。

这些选项使您能够选择要导入的特定表。选择所需的表格后,您可以通过点击隐藏过滤器来隐藏过滤器。

其他部分,例如MySQL Routine Objects,有类似的可用过滤器。

单击执行继续下一步。

然后向导导入对象,显示已执行的任务以及操作是否成功。如果生成了错误,您可以单击显示日志来查看错误的性质。下图显示了成功完成的操作进度示例。

图 9.54 逆向工程进度

内容在周围的文字中描述。

单击“下一步”继续下一步。

向导的最后一步提供了反向工程对象的摘要,如下图所示。

图 9.55 结果

内容在周围的文字中描述。

单击“完成”关闭向导。

在关闭 MySQL Workbench 之前,保存模式。单击 文件,然后从菜单中单击保存 ,将反向工程数据库保存为.mwb扩展名为 MySQL Workbench 的文件。

9.4.2.2.1 逆向工程中的错误

在逆向工程期间,应用程序会检查与现有名称重复的表和视图,并在必要时禁止重复名称。如果您尝试导入与现有对象名称重复的对象,您将收到一条错误消息通知。要查看逆向工程期间发生的任何错误,请单击显示日志。此操作将创建一个包含消息列表的面板,其中包括可能已生成的任何错误消息。单击隐藏日志以关闭面板。

如果您计划导入与现有对象同名的对象,请在逆向工程之前重命名现有对象。

如果您从多个模式导入对象,Physical Schemas则页面区域 中将有一个选项卡MySQL Model用于导入的每个模式。

您不能对与现有模式同名的实时数据库进行反向工程。要重用模式名称,您必须首先重命名现有模式。