架构对比与迁移
启用 数据库工具和 SQL 插件
此功能依赖于 数据库工具和 SQL 插件,该插件在 GoLand 中默认捆绑并启用。 如果相关功能不可用,请确保未禁用该插件。
按 Ctrl+Alt+S 打开设置,然后选择 。
打开 已安装 选项卡,找到 数据库工具和 SQL 插件,并勾选插件名称旁边的复选框。
在 GoLand 中,您可以比较两个相同类型的数据库对象。 例如,您可以比较两个架构、两个表或两个例程。 包含对象的数据库可以托管在不同的服务器上。 GoLand 会在 迁移 对话框中显示这两个对象结构之间的差异。
Migration 是一种将结构和更改从一个对象传输到另一个对象(例如从一个架构到另一个架构)的过程。 在 GoLand 中,这些对象称为 起始 和 目标。 迁移脚本的生成目的是使 目标 等于 起始。 但您可以根据需要修改该脚本以满足您的要求。

对于更改,GoLand 使用以下颜色编码。
颜色 | 描述 |
|---|---|
| 在 起始 中添加的对象,在迁移成功后将创建到 目标 中。 |
| 已修改的对象,将在 目标 中进行更改。 |
| 在 起始 中删除的对象,在迁移成功后将在 目标 中移除。 |
请参阅 参考部分中的对话框控件说明。
架构对比
显示对象之间的差异
在 数据库 工具窗口中,选择两个相同类型的对象。 例如,两个架构。
右键点击所选项,并选择 与以下结构比较。 或者,按 Ctrl+D 键。

以表格形式显示更改之间的差异
在 迁移 对话框中,点击 起始 或 目标 字段中的项目。
点击 对象属性差异 选项卡。
在 DDL 中显示更改之间的差异
在 迁移 对话框中,点击 起始 或 目标 字段中的项目。
点击 DDL 差异 选项卡。

显示相同项目
要显示 起始 和 目标 对象中所有相同的项目,请选中 显示相同对象 复选框。


架构迁移
迁移对象之间的更改
在 数据库 工具窗口中,选择两个相同类型的对象。 例如,两个架构。
右键点击对象并在上下文菜单中选择 与以下结构比较。 或者,按 Ctrl+D。
在 脚本预览 选项卡中会生成一组语句,您可使用这些语句编写迁移脚本。
在 脚本预览 选项卡中,验证迁移脚本是否正确。
单击 执行。 或者,单击 在控制台中打开查询 在 查询控制台 中打开所有脚本。
选择要迁移的更改
要排除某项更改,请单击更改旁边的复选框。
要排除所有更改,请单击 目标 标签旁的复选框。
要包含之前被排除的所有更改,请单击 目标 标签旁的复选框。
迁移对话框控件
图标 | 工具提示与快捷键 | 描述 |
|---|---|---|
全部展开 | 展开所有已折叠的节点。 | |
全部收起 | 折叠所有已展开的节点。 | |
交换 | 交换 起始 与 目标 面板。 | |
选项 |
| |
包含更改 | 应用所选更改。 | |
显示相同对象 | 显示所有相同的项。 |
DDL 差异控件
项 | 工具提示与快捷键 | 描述 |
|---|---|---|
| 上一个差异/下一个差异 Shift+F7/F7 | 跳转到上一个或下一个差异。 |
跳转到源 F4 | 在编辑器的活动面板中打开所选对象的定义。 光标位置与 差异查看器 中的位置相同。 | |
并排查看器 | 选择查看器模式: 并排查看器 或 统一查看器。 并排模式包含两个面板,统一模式包含一个面板。 | |
空白字符 | 定义 Diff Viewer 应该如何处理空格。
| |
高亮模式 | 选择差异的高亮显示方式。 可用选项包括:
| |
同步滚动 | 同步左侧和右侧窗格中的滚动。 | |
设置 | 选择在比较过程中要忽略的选项。 | |
帮助 F1 | 打开浏览器并显示相应的帮助页面。 |