国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > 綜合 > 正文

實用的備份PL/SQL程序工具

2024-07-21 02:08:33
字體:
來源:轉載
供稿:網友

/*[email protected]*/

 

功能: 用于備份當前用戶所擁有的所有pl/sql objects (包括

type,type body, procedure , function, package, package body or java source )

 

原理: 對user_source數據字典的調用,得到所有的

pl/sql 代碼.

 

使用方法舉例:

1.     在c盤建立目錄c:/export

2.     將export_source.sql和extract_source.sql拷貝到c盤根目錄.

3.     登陸sqlplus , connect scott/tiger

4.     運行@c:/export_source.sql

5.     執行結束,所有的scott擁有的pl/sql object的代碼文件建立在c:/export目錄里.

后綴名.pks 表示package

后綴名.pkb 表示package body

后綴名.sql 表示其他objects

 

 

備注:

如果想得到數據庫中各個schema的pl/sql objects ,只需把工具代碼中的user_source改成dba_source,由system

運行即可.

 

 

 

 

工具代碼:

export_source.sql

 

set serveroutput on size 1000000

set echo off verify off feedback off trimspool on pages 0 lines 512

set termout off

set termout on

 

prompt

prompt pl/sql export utility

prompt

prompt this utilty exports all of the current schema's pl/sql source code into

prompt a subdirectory called export.

prompt

prompt exporting current user's source to folder ./export

 

set termout off

spool temp_source_extract.sql

prompt set echo off verify off feedback off trimspool on termout off pages 0 lines 512

 

declare

    /*

    || this cursor extracts each pl/sql stored procedure's name and procedure type

    */

    cursor cur_source_programs

    is

        select    distinct us.name, us.type,

                  us.name || decode(us.type, 'package',      '.pks',

                                             'package body', '.pkb',

                                             '.sql') spool_file

        from      user_source us

        order by  us.name, us.type;

 

begin

    for cur_source_programs_row in cur_source_programs

    loop

        dbms_output.put_line('spool export/' || user || '_' || cur_source_programs_row.spool_file);

        dbms_output.put_line('@extract_source ' || cur_source_programs_row.name || ' "' || cur_source_programs_row.type || '"');

        dbms_output.put_line('spool off');

    end loop;

 

end;

/

 

spool off

@temp_source_extract

 

set feedback on verify on termout on

 

prompt export complete!

prompt 

  

 

extract_source.sql:

 

set head off verify off

prompt --************************************************************************************--;

prompt --*;

prompt --*  script:        &2 &1;

prompt --*;

prompt --*  author:;

prompt --*;                

prompt --*;

prompt --*  purpose:;

prompt --*;                

prompt --*;

prompt --*;                

prompt --*;               

prompt --*;

prompt --*  parameters:;

prompt --*;               

prompt --*;

prompt --*  dependencies:  none;

prompt --*;

prompt --*  revisions:;

prompt --*  ver        date        author              description;

prompt --*  ---------  ----------  ------------------  ------------------------------------;

prompt --* ;        

prompt --*;

prompt --*************************************************************************************--;

 

 

select    decode(rownum, 1, 'create or replace '|| rtrim(rtrim(us.text, chr(10) )),

                            rtrim(rtrim(us.text, chr(10) ))) text

from      user_source us

where     us.name = '&1'

and       us.type = '&2'

order by  us.line;

 

prompt /

prompt

 

 

 

 
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 龙泉市| 临颍县| 深圳市| 赤水市| 顺义区| 绥化市| 黎城县| 保德县| 庆安县| 文登市| 临江市| 泾川县| 内丘县| 宜兴市| 大同县| 丰都县| 沙雅县| 八宿县| 寿宁县| 图们市| 德令哈市| 仁化县| 泰州市| 桃源县| 公安县| 蒙城县| 会理县| 鸡西市| 岢岚县| 长丰县| 温泉县| 桦南县| 临高县| 那曲县| 阆中市| 许昌县| 东丽区| 稷山县| 定远县| 天气| 大城县|