架构比较和迁移
在 DataGrip,您可以比较两个相同类型的数据库对象。 例如,您可以比较两个 schema、两个表或两个例程。 可以在不同的服务器上托管包含对象的数据库。 DataGrip 向您显示这两个对象结构的差异,在 迁移 对话框中。
Migration 是将结构和更改从一个对象转移到另一个对象(例如,从一个 schema 转移到另一个 schema )的过程。 在 DataGrip 中,这些对象被称为 起始 和 目标。 迁移脚本已生成,以使 目标 等于 起始。 但是您可以修改脚本以满足您的需求。

对于更改,DataGrip 使用以下颜色编码。
颜色 | 描述 |
|---|---|
| 成功迁移后,将在 起始 中添加的对象将在 目标 中创建。 |
| 需修改的对象将在 目标 中被更改。 |
| 在 起始 删除的对象将在迁移成功的情况下,在 目标 中被删除。 |
请参阅 参考部分中的对话框控件描述。
架构比较
显示对象之间的差异
在 数据库资源管理器 中,选择两个相同类型的对象。 例如,两种模式。
右键点击选择并选择 与以下结构进行比较。 或者按 Ctrl+D。

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

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


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