我需要每天检查数据仓库中生成的数据 . 数据仓库是SQL Server中的数据,源数据在Oracle中 . 当我每天上班时,我在SQL Developer中运行我的一组查询,以从源获取我的预期结果的记录 . 同时,我在SQL Server中启动第二组查询以获得比较结果 . 我直观地比较了SQL Developer和SQL Server结果,以确定etl和calcs是否成功 .
这是一个相当手动的过程 . 理想情况下,我想提取实际(SQL Server)和预期(Oracle)结果,将它们存储在一个表(最好是我的计算机上的本地数据库)中,然后可以相互比较并存储比较结果以保留历史记录当数据检查失败时如果我可以在设定的时间安排提取,那将是一个奖励 .
我的困境:1)我只能访问SQL Developer和SQL Server Manager中的sql查询;无权创建或写入表来创建视图或存储存储过程 .
进行这些检查的最佳方法是什么?我可以在计算机上本地安装和运行的最佳工具是什么?任何建议将不胜感激 .
1 回答
你可能想看看SQL Workbench
它有一个特殊的“SQL”命令来比较两个表之间的数据,这些表可以驻留在不同的数据库中 . 输出是更新一个表以使其具有与另一个表相同的数据的SQL脚本,或者是可以进一步处理的XML文件 .
该命令称为WbDataDiff . 更多信息可以在manual找到 .