使用minus比对非LOB和LOB表的两个小脚本

脚本写的比较简单,使用minus比较用户下的表数据,第一个脚本是比对非LOB字段的,第二个脚本比对有LOB字段的表。

基本原理就是

select * from xxxx@xx

minu

select * from xxxxx;

这样的语句。其中比对LOB字段使用dbms_lob.getlength获取lob字段的长度进行比对。

首先创建一个dblink,这里就不说了

第一个比对不含LOB的表:

sqlplus ggs/ggs <' tab.sql  >tab.txt
!sed 's/[ ]*$//g' tab.txt >tab.sql
!rm -rf tab.txt

spool minus_res.txt
@tab.sql
spool off
EOF
exit

第二个比对含有LOB字段的表:
sqlplus ggs/ggs < lob1.txt
!sed 's/[ ]*$//g' lob1.txt >lob1.sql
!rm -rf lob1.txt

spool lob1_res.txt
@lob1.sql
spool off
EOF


你可能感兴趣的:(脚本综合)