使用反向工程向导,可以从现有数据库或 Excel 工作簿创建数据库模型。 数据库模型以图形方式显示数据库的结构,因此可以查看数据库元素(如表和视图)如何相互关联,而不显示实际数据。 这可以简化创建新数据库或了解现有数据库的结构。
重要: SQL Server 2016 及更早版本支持反向工程。 SQL Server 2019 或更高版本不支持它。
使用“数据库模型关系图”模板,可以从现有数据库创建数据库模型。 对于具有Visio 计划 2或 Visio 许可证的用户,此模板在 应用中可用。 如果不确定正在使用哪个版本的 Visio,请单击“文件”>“帐户”>“关于 Visio”。
查看反向工程向导提取的内容
向导可以提取的架构定义信息取决于多种因素的组合,例如数据库管理系统 (DBMS) 和 ODBC 驱动程序的功能。 向导显示它可以提取的所有元素,并允许你选择所需的元素。 例如,你可能只对 10 个表中的 5 个和 4 个视图中的 2 个感兴趣。
运行向导时,除了在“表和视图”窗口中列出反向工程项外,还可以选择让它自动创建绘图。 如果决定不自动创建绘图,可以将项目从“表和视图”窗口拖动到绘图页面上,手动组建数据库模型。
如果它们可从目标 DBMS 获得,则可以提取以下内容:
-
表格
-
视图
-
主键
-
外键
-
索引
-
触发器 (包括代码)
-
检查子句 (包括代码)
-
存储过程 (包括代码)
准备启动向导
如果要对 Excel 工作簿进行反向工程,在启动向导之前,需要打开工作簿并将组命名为 (或包含列标题的单元格区域) 。 如果要使用多个工作表,只需为每个工作表中的这组列单元格命名。 此范围的单元格在向导中视为表格。 有关如何命名单元格区域的详细信息,请参阅 Excel 帮助。
为获得最佳效果,请在运行“反向工程向导”之前,将默认驱动程序设置为要实施反向工程的目标数据库。 这可确保向导正确映射本机数据类型,并且向导提取的所有代码都正确显示在“代码”窗口中。
-
依次单击“文件”选项卡、“新建”、“模板”、“软件和数据库”,然后双击“数据库模型关系图”。
-
在“ 数据库 ”选项卡上的“ 管理 ”组中,单击“ 数据库驱动程序”。
-
在“ 驱动程序 ”选项卡上,为 DBMS 选择 Visio 提供的驱动程序。 例如,如果要设计 Access 数据库,请选择 Microsoft Access。
如果要对 Excel 工作表实施反向工程,请选择“ODBC 通用驱动程序”。
-
单击“设置”。
-
在“ODBC 驱动程序”选项卡上,为 DBMA 选择自动售货机提供的驱动程序的检查框。 例如,如果要设计 Access 数据库,则可以选择“Microsoft Access Driver (*.mdb,*.accdb) 检查”框。
-
在每个对话框中单击“ 确定 ”。
供应商提供的 32 位 ODBC 驱动程序必须来自高于版本 2.0 且符合 ODBC 级别 1 的 ODBC 数据访问包。 供应商提供的 OLE DB 提供程序必须符合 OLE DB 版本 1.0 或更高版本规范。
反向工程现有数据库
-
在数据库模型关系图的“ 数据库 ”选项卡上,单击“ 反向工程”。
-
在“反向工程向导”的第一个屏幕上,执行以下操作:
-
为数据库管理系统选择 Microsoft Visio 数据库驱动程序, (DBMS) 。 如果尚未将 Visio 数据库驱动程序与特定的 ODBC 数据源相关联,请单击“ 设置 ”以立即执行此操作。
如果要对 Excel 工作表实施反向工程,请选择“ODBC 通用驱动程序”。
-
选择要更新的数据库的数据源。 如果尚未为现有数据库创建数据源,请单击“新建”,立即创建数据源。
创建新源后,其名称会添加到“数据源”列表中。
-
对设置感到满意后,单击“下一步”。
-
按照任何特定于驱动程序的对话框中的说明进行操作。 例如,在“连接数据源”对话框中,键入用户名和密码,然后单击“确定”。 如果数据源不受密码保护,请单击“ 确定”。
-
-
选中要提取的信息类型的复选框,然后单击“下一步”。
某些项可能灰显,因为并非所有系统都支持向导可以提取的所有类型的元素。
-
选中要提取的表(和视图,如有)的复选框,或单击“全选”以全部提取,然后单击“下一步”。
如果要对 Excel 工作表进行反向工程,并且此列表中没有显示任何内容,则可能需要命名电子表格中包含列标题的单元格区域。
-
如果在步骤 3 中选择了“存储过程检查”框,请选择要提取的过程,或单击“全选”将其全部提取,然后单击“下一步”。
-
选择是否希望反向工程项自动添加到当前页。
除了在“表和视图”窗口中列出反向工程项外,还可以选择让向导自动创建绘图。 如果决定不自动创建绘图,可以将项目从“表和视图”窗口拖动到绘图页面上,手动组建数据库模型。
-
查看所选内容,验证是否正在提取所需信息,然后单击“ 完成”。
如果使用 ODBC 通用驱动程序,则可能会收到一个错误,指示反向工程信息可能不完整。 在大多数情况下,这不是问题 ,只需单击“ 确定 ”,然后继续执行向导。
向导提取所选信息并在“输出”窗口显示有关提取过程的备注。