ITPub博客

首页 > 数据库 > Oracle > 单个过程获取脚本

单个过程获取脚本

原创 Oracle 作者:zhangsharp20 时间:2015-08-10 16:28:33 0 删除 编辑
declare
 v_text varchar2(4000);
 v_line number;
 v_min_line number;
 v_max_line number;
-- i_owner varchar2(30);
-- i_object varchar2(30);
 cursor c_as is
  select line,case when line=1 then 'create or replace '||text 
               else text 
                end text
  from all_source where owner='J1_G3_ZBQ' and name ='CP_TRANS_G3SJGS';  
 fhandle utl_file.file_type;
begin
 select min(line),max(line) into v_min_line,v_max_line from all_source where owner='J1_G3_ZBQ' and name ='CP_TRANS_G3SJGS';  
 fhandle := utl_file.fopen('EXP_DIR','CP_TRANS_G3SJGS.sql', 'w',32767);
 for cur in c_as loop
  v_text :=cur.text;
  v_line :=cur.line;
  if v_line=v_max_line then
  utl_file.put_line(fhandle ,replace(replace(v_text,chr(10),'/'),';',';'||chr(10)||'/'));
--  dbms_output.put_line(replace(v_text,chr(10),'/'));
  else
  utl_file.put_line(fhandle ,replace(v_text,chr(10),''));
--  dbms_output.put_line(replace(v_text,chr(10),''));
  end if;
 end loop;
 utl_file.fclose(fhandle);
end;
/

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

请登录后发表评论 登录
全部评论

注册时间:2014-08-12

  • 博文量
    382
  • 访问量
    651098