我遇到的情况是这样的:
我们的ETL工具从datastage 7.5升级到了datastage8.5。我们现在要做的工作就是保证升级前后的数据一致。
现在在做incremental testing,就是看每天新抓进来的数据是否一样。
目前等于有两个完全隔离的系统在并行,一个是v7.5和由其产生的数据库,另一个是v8.5和由其产生的数据库。数据库都是oracle的。现在小组长给的任务是,对比一下这两个完全隔离的数据库中对应表的内容是否一样。
我遇到的问题是:
1.表很多,每章表的属性很多,表内的数据也很多,人工完成几乎不可能。
2.这是两个完全不同的数据库,我用SqlDeveloper连上每个数据库。
3.两个数据库中的表是“逻辑”上完全对应的,但是个别列在“物理”上并不一致,比如时间的表现格式就都不一样。
请问你们有什么方法能确保关键属性是一致的?用某种高级SQL或者工具吗?下面是我自己想出来的解决方案(本人新手,请不要笑我):
1.我把两个数据库的数据都导入到Access里
2.我想通过一定的编程和SQL组合,忽略掉肯定不匹配的列(比如所有跟时间有关的列,对每张表都能自动识别这些列),然后用UNION看一下有没有多出新的列来
3.最好能写一个小程序,在我导入表到Access之后自动运行,然后给出报告,是否一致等等。
请问这个方法可行吗??非常感谢!数据库oracleaccesstesting工具