在SQL Server下,可以使用 checksum(*) 计算出每行数据的哈希值,用这个方法可以对比两个表中的数据是否全部一致。那在Oracle中是不是也有类似的函数可以计算出每行的数据是否一致。表中的数据大约有几万行,如果用每个字段做比较怕以后修改表结构后,方法失效……
谢谢各位了……

解决方案 »

  1.   

    我用过导出来然后再用第三方工具UTRAEDIT比较的,
    直接用SQL语句比较的有文章介绍,没有用过
      

  2.   

    表结构如果修改的话,用minus好像不通用, selece col1,col2 from tab1 minus select col1,col2
    form tab2; select col1,col2 from tab2 minus select col1,col2 from tab1;
    如果表结构不改,才几w条数据比较倒是很轻松。 
      

  3.   

    目前主要是从SQL Server上把数据导到Oracle中,然后对比一下哪些记录被修改过。每天怎自动对比这些记录是否全部相同。并把这些改动记录下来。如果是使用第三方工具的话,就没有办法在过程里直接对比完成了。
      

  4.   

    用minus的话不用拼字段内容啊,把列对应上直接用就是了,但是如果其中一张表更改了列名,那么这个就要跟着改一下了。