ITPub博客

首页 > Linux操作系统 > Linux操作系统 > PL/SQL裝載LOB數據

PL/SQL裝載LOB數據

原创 Linux操作系统 作者:ginni_hua 时间:2009-04-10 16:05:09 0 删除 编辑

FILEOPEN():打開BFILE。
FILECLOSE():只有BFILE才能使用該過程,關閉特定的BFILE。
GETLENGTH():該函數用於返回LOB的長度。
LOADCLOBFROMFILE():它從文件中將字符數據加載到CLOB或NCLOB列,在加載時,它也可以執行字符集轉換。可以給出一個偏移量,指定只加載這個文件的一部分數據。
CREATETEMPORARY():顯式地創建一個臨時LOB。
FREETEMPORARY():釋放臨時的LOB。雖然臨時的LOB僅存在於應用程序的上下文范圍以內,或僅存於建立連接的時候,但使用這個過程可以顯式地釋放一些資源。

create directory TEST as '/home/oracle';
grant read,write on directory TEST to users;

create or replace procedure inf_file_65 is
  l_bfile   BFILE;
  l_clob    CLOB;
  s_offset  INT := 1;
  d_offset  INT := 1;
  id        INT := 0;
  lc        INT := 1;
  warning   INT;
BEGIN
  src_lob := bfilename('TEST', 'hostname');
  dbms_lob.createtemporary(l_lob, TRUE);

  dbms_lob.fileopen(l_bfile, 0);
  dbms_lob.loadclobfromfile(dest_lob,
                            src_lob,
                            DBMS_LOB.getlength(l_bfile),
                            d_offset,
                            s_offset,
                            id,
                            lc,
                            warning);
  dbms_lob.fileclose(l_pfile);
  dbms_output.put_line(l_clob);
  INSERT INTO informix_t VALUES ('hostname', l_clob,sysdate);
  dbms_lob.freetemporary(l_clob);
  COMMIT; 
end inf_file_65;

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/7836221/viewspace-587021/,如需转载,请注明出处,否则将追究法律责任。

上一篇: 郁悶..
请登录后发表评论 登录
全部评论

注册时间:2008-03-20

  • 博文量
    174
  • 访问量
    364268