用于备份文件中PACKAGES的源代码的脚本

时间:2017-07-14 11:00:29

标签: oracle sqlplus

我需要制作一个脚本,从每个包中获取所有代码源(规范+正文),然后输入要求我的老师的文本。

示例:BOLETIN(我的BBDD包装) - > BOLETIN.TXT(包括所有来源)。

注意:我不能使用utl_file,所有这些"导入"用于本地备份。

我看到有用的东西here,我试图适应我的导入:

set pagesize 0
set trimspool on  
set headsep off 
set feedback OFF
set echo OFF
set verify off
set timing off
set linesize 4000

-- Create an sql file that will create the individual result files
SET DEFINE OFF

SPOOL C:\temp\generar_fichero.sql
    PROMPT COLUMN nombe_dinamico NEW_VALUE fichero_dinamico
    PROMPT

    PROMPT SELECT 'C:\temp\BBDD\PACKAGE\package_'||&1||'.txt' nombe_dinamico 
    PROMPT FROM DUAL
    PROMPT /

    PROMPT SPOOL &fichero_dinamico
        PROMPT SELECT TEXT
        PROMPT FROM USER_SOURCE
        PROMPT WHERE NAME = ''||&1||''
        PROMPT /

    PROMPT SPOOL OFF

SPOOL OFF

SET DEFINE &

-- Buscar los nombres de los diferentes packages
--SELECT DISTINCT(NAME) nombre_fichero
--FROM USER_SOURCE
--WHERE TYPE = 'PACKAGE'
--ORDER BY NAME;

SPOOL c:\temp\run_all.sql
    SELECT '@C:\temp\asd\generar_fichero.sql'||nombre_fichero 
    FROM (
        SELECT DISTINCT(NAME) nombre_fichero
        FROM USER_SOURCE
        WHERE TYPE = 'PACKAGE'
        ORDER BY NAME
        )
    /

SPOOL OFF

@c:\temp\run_all.sql

问题是我没有创建.txt文件,我不知道我做错了什么。

希望你能帮助我。

提前致谢。

0 个答案:

没有答案