可以的,你可以写Procedure来处理
用UTL_FILE就可以了,具体你可以看看有关PL/SQL的参考书,里面有详细的文件读写说明。

解决方案 »

  1.   

    you can use utl_file package to read and write operting system text files
      

  2.   

    用utl_file访问文本文件是没问题了,可是怎样直接访问EXECL文件
    哪位高手帮忙有例子共享一下!
      

  3.   

    utl_file好像不行,如果你用EXCEL只是利用它的CSV格式的文件还行,其他的没戏,EXCEL是一个
    com组件,你想个读写EXCEL也就是和EXCEL通讯的问题。不知道Oracle Office包里有没有这种写好的函数,如果没有,就得用C(Pro C)语言写个外部历程,还得引入EXCEL这个组件,这个组件里包含了所有的excel的命令,VBA能用的他都有。这样肯定能实现。太麻烦了,呵呵!
      

  4.   

    可以使用 Oracle 的 COM 技术呀~在 Oracle\com 目录下有例子.
    可以将 oracle 的数据,通过包(Oracle 自带)来实现对 word,execl 操作.
      

  5.   

    我是想把EXCEL里的文件按格式读到数据库当中!
    哪位高手有例子麻烦共享一下,可用马上给分!
      

  6.   

    Excel To Oracle (图例)
    http://www.oradb.net/tran/excel2ora.htm
      

  7.   

    谢谢chanet(牧师)可是我要做的是通过ORA直接读取EXCEL文件然后在保存进ORA中
    而不是要另存为文本文件在处理!
    有没有直接操作EXCEL的例子!谢谢!
      

  8.   

    这是处理Word的代码,拿去改改用吧!
    DECLARE 
     testApp OLE2.OBJ_TYPE; 
     testDocuments OLE2.OBJ_TYPE; 
     testDocument OLE2.OBJ_TYPE; 
     testSelection OLE2.OBJ_TYPE; 
     i number:=0;
     j number:=25;
     cc number:=0;
     b number:=0;
     
     args OLE2.LIST_TYPE; 
     DocumentName varchar2(30):= 'c:\test_ole.DOC';
     cursor a is select a,b,c from test where rownum<=45;
     bb a%rowtype;
    BEGIN 
      --建立word对象
      testapp:=OLE2.CREATE_OBJ('Word.Application'); 
      OLE2.SET_PROPERTY(testapp, 'Visible', 1); 
     
     -- 取得word文档集合
      testDocuments:=OLE2.GET_OBJ_PROPERTY(testapp, 'Documents'); 
     
     -- 打开一个word文档 
      args:=OLE2.CREATE_ARGLIST; 
      OLE2.ADD_ARG(args, DocumentName); 
      testDocument :=OLE2.INVOKE_OBJ(testDocuments,'Open',args); 
      OLE2.DESTROY_ARGLIST(args); 
     
      testSelection:=OLE2.GET_OBJ_PROPERTY(testapp, 'Selection'); 
     open a;
     fetch a into bb;
     if a%notfound then
      null ;
     else
      loop
     
     -- 导航到book 
      args:=OLE2.CREATE_ARGLIST; 
      OLE2.ADD_ARG(args, -1);           --  constant 'wdGoToBook' = -1 
      OLE2.ADD_ARG(args,0);             -- Which 
      OLE2.ADD_ARG(args,0);             -- Count 
      OLE2.ADD_ARG(args, 'mk_name'); -- Name => book name 
      OLE2.INVOKE(testSelection,'GoTo',args); 
     
     -- 在book处插入数据 
      OLE2.SET_PROPERTY(testSelection, 'Text', bb.a||';'); 
      
      OLE2.DESTROY_ARGLIST(args); 
      args:=OLE2.CREATE_ARGLIST; 
      OLE2.ADD_ARG(args, -1);          
      OLE2.ADD_ARG(args,0);             
      OLE2.ADD_ARG(args,0);            
      OLE2.ADD_ARG(args, 'mk_property'); 
      OLE2.INVOKE(testSelection,'GoTo',args); 
     
     -- 在book处插入数据 
      OLE2.SET_PROPERTY(testSelection, 'Text', bb.b||';'); 
      OLE2.DESTROY_ARGLIST(args); 
      
      
      
      args:=OLE2.CREATE_ARGLIST; 
      OLE2.ADD_ARG(args, -1);          
      OLE2.ADD_ARG(args,0);             
      OLE2.ADD_ARG(args,0);            
      OLE2.ADD_ARG(args, 'ccproperty'); 
      OLE2.INVOKE(testSelection,'GoTo',args); 
     
     -- 在book处插入数据 
      OLE2.SET_PROPERTY(testSelection, 'Text', bb.c||';'); 
      OLE2.DESTROY_ARGLIST(args); 
     fetch a into bb;
     exit when a%notfound;
      end loop;
      end if;
     -- 释放ole对象
      OLE2.RELEASE_OBJ(testSelection); 
      OLE2.RELEASE_OBJ(testDocument); 
      OLE2.RELEASE_OBJ(testDocuments); 
      OLE2.RELEASE_OBJ(testapp); 
     
    END; 
      

  9.   

    you can use utl_file package to read and write operting system text files