使用minus比對非LOB和LOB表的兩個小指令碼

2021-06-23 07:02:57 字數 664 閱讀 4787

指令碼寫的比較簡單,使用minus比較使用者下的表資料,第乙個指令碼是比對非lob欄位的,第二個指令碼比對有lob欄位的表。

基本原理就是

select * from ***x@xx

minu

select * from ***xx;

這樣的語句。其中比對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

eofexit

第二個比對含有lob欄位的表:

sqlplus ggs/ggs !sed 's/[ ]*$//g' lob1.txt >lob1.sql

!rm -rf lob1.txt

spool lob1_res.txt

@lob1.sql

spool off

eof

level和minus的使用

level是從0開始的,它必須是和connect by一起使用的 個人理解相當於乙個偽列 minus 是比較兩個表中 a minus b 是在a中有b裡面沒有的 insert into t a id,name,age,values 1 1 1,1 insert into t a id,name,ag...

ORACLE中LOB欄位的使用和維護

隨著社會的發展,在現代資訊系統的開發中,需要儲存的已不僅僅是簡單的文字資訊,同時還包括一些和音像資料或者是超長的文字。比如開發一套旅遊資訊系統,每乙個景點都有豐富的 音像資料和大量的文字介紹。這就要求後台資料庫要有儲存這些資料的能力。oracle公司在其oracle8i中通過提供lob欄位實現了該功...

使用JmsTemplate傳送持久化和非持久化訊息

由於jmstemplate內部傳送訊息預設為持久化的,所以不用設定即可傳送持久化訊息。如果要傳送非持久化的訊息,請按照以下配置即可 對於傳送非持久化訊息需要配置explicitqosenabled該屬性為true,否則spring內部傳送訊息時將採用預設配置進行傳送訊息,而spring內部預設為持久...