表结构如下
SQL> desc t_recommend_param;
Name           Type          Nullable Default Comments          
-------------- ------------- -------- ------- ----------------- 
EXPLAIN_FRONT  BLOB          Y                前台总体说明文档  
EXPLAIN_USUAL  BLOB          Y                日常推荐说明文档  
EXPLAIN_ORIENT BLOB          Y                定向推荐说明文档  
SHOW_HIS       CHAR(1)       Y        '0'     是否显示历史推荐情况 0 否 1是 
WATCHWORD      VARCHAR2(200) Y                口号              
PASTDUE        NUMBER        Y                日常推荐过期时间  现在我要向该表插入几个word文档到3个blob字段中,求解这个存储过程怎么写。
这几个word文档所在的路径为:E:\prop\prop\web\recommend\files

解决方案 »

  1.   

    跟那个哥们一样错误,为什么???
    declare
      a_blob  BLOB;
      a_bfile BFILE := BFILENAME('UTLLOBDIR','党政领导干部选拔任用工作有关事项报告办法(试行).doc'); --用来指向外部操作系统文件
    begin
      insert into bfile_tab values (a_bfile)
        returning bfile_column into a_bfile;
      insert into t_recommend_param(explain_front) values (empty_blob())
        returning explain_front into a_blob;
      dbms_lob.fileopen(a_bfile);
      dbms_lob.loadfromfile(a_blob, a_bfile, dbms_lob.getlength(a_bfile));
      dbms_lob.fileclose(a_bfile);
      commit;
    end;
     
    ORA-22288: 文件或 LOB 操作FILEOPEN失败
    系统找不到指定的路径。
    ORA-06512: 在"SYS.DBMS_LOB", line 504
    ORA-06512: 在line 10
      

  2.   

    跟那个哥们一样错误,为什么???
    declare
      a_blob  BLOB;
      a_bfile BFILE := BFILENAME('UTLLOBDIR','党政领导干部选拔任用工作有关事项报告办法(试行).doc'); --用来指向外部操作系统文件
    begin
      insert into bfile_tab values (a_bfile)
        returning bfile_column into a_bfile;
      insert into t_recommend_param(explain_front) values (empty_blob())
        returning explain_front into a_blob;
      dbms_lob.fileopen(a_bfile);
      dbms_lob.loadfromfile(a_blob, a_bfile, dbms_lob.getlength(a_bfile));
      dbms_lob.fileclose(a_bfile);
      commit;
    end;
     
    ORA-22288: 文件或 LOB 操作FILEOPEN失败
    系统找不到指定的路径。
    ORA-06512: 在"SYS.DBMS_LOB", line 504
    ORA-06512: 在line 10你连接的数据库是服务器 的还是本地数据库???UTLLOBDIR 的路径是要对应服务器的路径的。。
      

  3.   

    搜索了一下,这个说得最清楚了
    http://www.searchdatabase.com.cn/showcontent_57526.htm
      

  4.   

    跟那个哥们一样错误,为什么???
    declare
      a_blob  BLOB;
      a_bfile BFILE := BFILENAME('UTLLOBDIR','党政领导干部选拔任用工作有关事项报告办法(试行).doc'); --用来指向外部操作系统文件
    begin
      insert into bfile_tab values (a_bfile)
        returning bfile_column into a_bfile;
      insert into t_recommend_param(explain_front) values (empty_blob())
        returning explain_front into a_blob;
      dbms_lob.fileopen(a_bfile);
      dbms_lob.loadfromfile(a_blob, a_bfile, dbms_lob.getlength(a_bfile));
      dbms_lob.fileclose(a_bfile);
      commit;
    end;
     
    ORA-22288: 文件或 LOB 操作FILEOPEN失败
    系统找不到指定的路径。
    ORA-06512: 在"SYS.DBMS_LOB", line 504
    ORA-06512: 在line 10你连接的数据库是服务器 的还是本地数据库???UTLLOBDIR 的路径是要对应服务器的路径的。。

    我连接的数据库 是项目连接访问的那个数据库啊,自己创建的数据库啊
    难道不是???
      

  5.   

    跟那个哥们一样错误,为什么???
    declare
      a_blob  BLOB;
      a_bfile BFILE := BFILENAME('UTLLOBDIR','党政领导干部选拔任用工作有关事项报告办法(试行).doc'); --用来指向外部操作系统文件
    begin
      insert into bfile_tab values (a_bfile)
        returning bfile_column into a_bfile;
      insert into t_recommend_param(explain_front) values (empty_blob())
        returning explain_front into a_blob;
      dbms_lob.fileopen(a_bfile);
      dbms_lob.loadfromfile(a_blob, a_bfile, dbms_lob.getlength(a_bfile));
      dbms_lob.fileclose(a_bfile);
      commit;
    end;
     
    ORA-22288: 文件或 LOB 操作FILEOPEN失败
    系统找不到指定的路径。
    ORA-06512: 在"SYS.DBMS_LOB", line 504
    ORA-06512: 在line 10你连接的数据库是服务器 的还是本地数据库???UTLLOBDIR 的路径是要对应服务器的路径的。。

    我连接的数据库 是项目连接访问的那个数据库啊,自己创建的数据库啊
    难道不是???那党政领导干部选拔任用工作有关事项报告办法(试行).doc  这个文档就要放到数据库所安装的机器上
    的 路径下。