使用PL/SQL从数据库中读取BLOB对象1.确认现有对象SQL>colfdescfora30SQL>selectfid,fname,fdescfrombobo_blob;FIDFNAME FDESC------------------------------------------------------------------------------------------1ShaoLin.jpg 少林寺-康熙手书2DaoYing.jpg 倒映2.创建存储DirectorySQL>connect/assysdbaConnected.SQL>createorreplacedirectoryBLOBDIRas'D:\oradata\Pic';Directorycreated.SQL>SQL>grantread,writeondirectoryBLOBDIRtobobo;Grantsucceeded.SQL>3.创建存储过程SQL>connectbobo/boboConnected.SQL>SQL>CREATEORREPLACEPROCEDUREbobo_dump_blob(pinamevarchar2,ponamevarchar2)IS2 l_file UTL_FILE.FILE_TYPE;3 l_buffer RAW(32767);4 l_amount BINARY_INTEGER:=32767;5 l_pos INTEGER:=1;6 l_blob BLOB;7 l_blob_len INTEGER;8 BEGIN9 SELECTFPIC10 INTO l_blob11 FROM bobo_blob12 WHERE FNAME=piname;1314 l_blob_len:=DBMS_LOB.GETLENGTH(l_blob);15 l_file:=UTL_FILE.FOPEN('BLOBDIR',poname,'wb',32767);1617 WHILEl_poshostls-ld:\oradata\Pictotal7618-rwxrwxrwa 1gqgai None 2131553Apr1910:12DaoYing.jpg-rwxrwxrwa 1gqgai None 1768198Apr1910:12ShaoLin.jpgSQL>execbobo_dump_blob('ShaoLin.jpg','01.jpg')PL/SQLproceduresuccessfullycompleted.SQL>hostls-ld:\oradata\Pictotal11072-rwxrwxrwa 1Administrators SYSTEM 1768198Apr2607:1601.jpg-rwxrwxrwa 1gqgai None 2131553Apr1910:12DaoYing.jpg-rwxrwxrwa 1gqgai None 1768198Apr1910:12ShaoLin.jpgSQL>SQL>execbobo_dump_blob('DaoYing.jpg','02.jpg')PL/SQLproceduresuccessfullycompleted.SQL>hostls-ld:\oradata\Pictotal15236-rwxrwxrwa 1Administrators SYSTEM 1768198Apr2607:1601.jpg-rwxrwxrwa 1Administrators SYSTEM 2131553Apr2607:1902.jpg-rwxrwxrwa 1gqgai None 2131553Apr1910:12DaoYing.jpg-rwxrwxrwa 1gqgai None 1768198Apr1910:12ShaoLin.jpg