1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
1.向blob字段插入文本
INSERT  INTO  lobdemo ( key , clob_col, blob_col, bfile_col)  VALUES  (51,  'This is another character literal' , HEXTORAW( 'ABABABABABABABABABAB' ),   NULL );
 
2.更新blob字段文本
UPDATE  peoplesoft   SET  SUPPLIER_ID = HEXTORAW( 'CDCDCDCDCDCDCDCDCDCDCDCD' where  rownum =2;
update  PEOPLESOFT_1M  set  supplier_id = utl_raw.cast_to_raw(vendor_id) ;
 
3.向blob字段插入文件
 
CREATE  TABLE  yuser (ID number,photo BLOB);
 
create  or  replace  directory images  as  '/test' ;
 
  declare
    l_bfile bfile;
    l_blob blob;
  begin
    insert  into  yuser(ID,photo)  values (1,empty_blob())
    return  photo  into  l_blob;
    l_bfile:=bfilename( 'IMAGES' , 'test.doc' );  --IMAGES 是上面创建目录的大写
    dbms_lob. open (l_bfile,dbms_lob.file_readonly);
    dbms_lob.loadfromfile(l_blob,l_bfile,dbms_lob.getlength(l_bfile));
    dbms_lob. close (l_bfile);
    commit ;
  end ;
  /

update的方式

1
2
3
4
5
6
7
8
9
10
11
12
13
declare
    l_bfile bfile;
    l_blob blob;
  begin
    update  yuser  set  photo = empty_blob()  where  id = 2
    return  photo  into  l_blob;
    l_bfile:=bfilename( 'IMAGES' , 'PS.pdf' );
    dbms_lob. open (l_bfile,dbms_lob.file_readonly);
    dbms_lob.loadfromfile(l_blob,l_bfile,dbms_lob.getlength(l_bfile));
    dbms_lob. close (l_bfile);
    commit ;
  end ;