翻译|使用教程|编辑:莫成敏|2019-07-18 16:51:08.207|阅读 171 次 概述:SQL Compar是一款比较和同步SQL Server数据库结构的工具。这篇文章主要介绍,演示两个SQL Server数据库的基本比较和部署的工作示例。 SQL Compare是一款比较和同步SQL Server数据库结构的工具。现有超过150,000的数据库管理员、开发人员和测试人员在使用它。当测试本地数据库,暂存或激活远程服务器的数据库时,SQL Compare将分配数据库的过程自动化。 这篇文章主要介绍,演示两个SQL Server数据库的基本比较和部署的工作示例。 在这个示例中,Magic Widget Company具有在实时Web服务器上运行的SQL Server数据库。此数据库包含许多表,视图,存储过程和其他数据库对象。Magic Widget Company的开发团队一直在努力升级到他们的网站。作为这次升级的一部分,他们对数据库的结构做了一些更改。他们已将更改从开发服务器部署到登台服务器。他们现在需要将更改部署到生产服务器。 这个例子有四个步骤: 1、建立数据库 在SQL Server上创建示例数据库。 2、建立比较 指定要比较的数据源。 3、选择要部署的对象 查看结果并选择要部署的对象。 4、部署数据库 创建并运行部署脚本。 一、建立数据库工作示例使用以下数据库:
要在SQL Server上创建这两个数据库: 1、如果它们已经存在,请删除数据库 WidgetStaging 和 WidgetProduction。 2、单击此处下载数据库的SQL创建脚本。 3、复制脚本,将其粘贴到SQL编辑器应用程序中,然后运行它。创建数据库及其架构。 二、建立比较1、如果尚未运行,请启动SQL Compare。将显示“项目配置”对话框: 您可以编辑当前项目,也可以创建新项目。 如果要创建新项目,请单击“取消” 关闭对话框,然后单击工具栏上的“新建项目”(New Project) 2、在对话框的两侧,选择“ 数据库”。 在这个例子中,我们将比较数据库。您还可以比较备份,SQL比较快照和脚本文件夹。 3、对于每个数据源,在“服务器”中,键入或选择设置数据库的服务器的名称。 4、对于源文件,在Database中,键入或选择WidgetStaging。为目标键入或选择WidgetProduction。如果数据库未显示在“数据库” 列表中,请单击“刷新”。 5、单击“立即比较”。 SQL Compare显示一个消息对话框,显示比较的进度。 比较完成后,单击“确定"关闭消息框。 三、选择要部署的对象比较结果显示在结果窗格中: 结果按以下方式分组:
要查看组中的对象,请单击: 单击某个对象时,下面的(SQL差异)窗格会并排显示对象创建脚本中不同之处的彩色编码列表。 这个示例显示了WidgetPrices表: 有关更多信息,请参阅: 使用上面(“结果”)窗格中间的复选框选择要部署的对象。 在此示例中,我们将部署所有不同的对象: 1、在“筛选器”窗格上,确保选中默认筛选器中的“所有对象类型”。当前过滤器定义显示哪些对象。使用筛选器排除对象时,它将从“结果”窗格中删除该对象,无法选择对象进行部署。 2、在“结果”窗格的中间列中,选中顶级复选框以包含部署中的所有对象: 3、选择所有对象。 4、单击“部署”按钮打开部署对话框。 四、部署数据库在部署向导的第一页上,您可以选择创建和保存部署脚本,或使用SQL Compare执行部署。 选择部署方法 在这个示例中,我们将使用SQL Compare进行部署。 1、确保选中“使用SQL Compare部署”。 2、如果已选中,则清除“部署前备份目标” 复选框。 在此示例中,我们不会在部署之前进行备份。 3、确保选中“部署后重新比较”复选框,并选中“保存部署脚本的副本”复选框。 在此示例中,我们将从SQL Compare运行脚本,然后比较数据库以检查结果。我们还将保存部署脚本的副本。 4、单击“下一步”。 审核脚本 向导的最后一页显示有关部署的信息: “ 审阅” 页面上有三个选项卡 :
您可以搜索脚本,保存脚本或将其复制到剪贴板。
您可以按受影响的对象,修改类型或脚本修改目标的顺序查看分组的摘要。
在此示例中,SQL Compare显示警告,通知您它无法使用ALTER TABLE命令更改IDENTITY列,因此部署脚本将重建 WidgetReferences 表。 每当需要重建表时都会显示警告,因为这些操作可能比较慢。重建表时,将保留表中的数据。 执行部署 查看完脚本后,部署数据库:
SQL Compare然后重新比较数据库。结果显示在主窗口中。在此示例中,所有对象都显示为相同,确认了部署是成功的: |
|