如何用SQL Developer对比两个同结构数据库表的行数据差异
跨库表行数据差异对比方案(仅用SQL Developer)
方法一:使用SQL Developer自带的Database Diff工具
这是最直接的方式,无需编写跨库语句:
- 打开SQL Developer,确保已配置好db1和db2的数据库连接
- 顶部菜单栏选择
Tools>Database Diff - 在弹出窗口中,分别指定源连接(db1)和目标连接(db2)
- 切换到
Schemas标签,选中源库的schema1和目标库的schema2 - 切换到
Objects标签,找到并勾选要对比的table1和table2(结构一致时工具会自动关联) - 进入
Options标签,务必勾选Compare Row Data,同时确认行匹配依据(优先选主键,无主键则选唯一字段组合) - 点击
Compare执行对比,结果页会清晰列出:仅在db1存在的行、仅在db2存在的行,以及内容不一致的行
方法二:导出数据后本地对比(适用于小数据量)
如果表数据行数不多,也可以用导出后对比的方式:
- 右键db1的
schema1.table1,选择Export,导出为CSV格式,导出时勾选所有字段,且按唯一键排序 - 用同样的方式导出db2的
schema2.table2数据 - 在SQL Developer中打开两个CSV文件(
File>Open),利用编辑器的文本对比功能(部分版本支持),或手动按唯一键排序后逐行核对差异
内容的提问来源于stack exchange,提问作者Jim Beaumont
相关产品推荐
相关产品推荐

