首页 > 代码库 > 使用dbms_lob.compare比对lob字段
使用dbms_lob.compare比对lob字段
以前写了一个通过dbms_lob.getlength来比对lob长度的脚本,后来通过实践发现有点问题,发现很多长度一样的lob但是内容可能不一样,oracle目前只有使用dbms_lob.compare来比对lob字段,但是这个有个局限就是不能使用dblink来比对两个库的lob,下面是一个举例脚本,通过两张表tb1和tb2通过主键id来进行lob的比对
如果发现lob不一致,则打印出id号
. /home/oracle/.bash_profile sqlplus -silent test/test <<EOF set serveroutput on set pagesize 0 feedback off verify off heading off echo off Declare CURSOR c1 is select id from test.tb1; varC1 blob; varC2 blob; ln number(4); Begin for v1 in c1 loop select data into varC1 from test.tb1 where id = v1.id; select data into varC2 from test.tb2 where id = v1.id; ln := DBMS_LOB.Compare(varC1,varC2); if ln <>0 then DBMS_output.put_line(v1.id); end if; end loop; End; /
使用dbms_lob.compare比对lob字段
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。