dbms_lob 方法總結
1 dbms_lob.createtemporary(V_SQL,true); --創建一個臨時clob,用來存儲拼接的sql 2 dbms_lob.write(v_SQL,'寫入信息'); --寫入操作 3 dbms_lob.append(v_SQL,','); --拼接clob 4 dbms_lob.substr(v_SQL); --截取clob,不傳參數就是全部讀取 5 dbms_lob.freetemporary(v_SQL); --釋放clob
DBMS_LOB包中主要提供了以下幾個過程供用戶對內部LOB字段進行維護:
APPEND:將源LOB中的內容加到目的LOB中。
CLOSE:關閉已經打開的LOB。
CREATETEMPORARY:在用戶的臨時表空間中,建立臨時LOB。
FILECLOSE:關閉打開的BFILE定位符所指向的OS文件。
FILECLOSEALL:關閉當前會話已經打開的所有BFILE文件。
FILEEXISTS:確定file_loc對應的OS文件是否存在,1:存在。0:不存在。
FILEGETNAME:獲取BFILE定位符所對應的目錄別名和文件名。
FILEISOPEN:確定BFILE對應的OS文件是否打開。
FREETEMPORARY:釋放在默認臨時表空間中的臨時LOB。
FILEOPEN:打開文件。
GETCHUNKSIZE:當建立包含CLOB/BLOB列的表時,通過指定CHUNK參數可以指定操縱LOB需要分配的字節數(數據庫尺寸的整數倍)默認為數據塊的尺寸。
COPY:從源LOB中復制數據到目的LOB。
ERASE:刪除LOB中全部或部分內容。
TRIM:將LOB值減少到指定的長度。
WRITE:向LOB中寫入數據。
INSTR:返回特定樣式數據從LOB某偏移位置開始出現N次的具體位置。
IDOPEN:確定LOB是否打開,打開:1,未打開:0。
ISTEMPORARY:確定定位符是否為臨時LOB。
LOADFROMFILE:將BFILE的部分或全部內容復制到目標LOB變量。
LOADBLOBFROMFILE:將BFILE數據裝載到BLOB中,並且在裝載后取得最新的偏移位置。
OPEN:打開LOB,open_mode(只讀:dbms_lob.lob_readonly,寫:dbms_lob.lob_readwrite)。
COMPARE:比較兩個同種數據類型的LOB的部分或全部值是否相同。
GETLENGTH:獲取LOB的長度。
READ:從LOB中讀出數據。
SUBSTR:與字符處理函數SUBSTR使用方法一樣。
WRITEAPPEND:將緩沖區數據寫到LOB尾部。