用sql语句导出oracle中的存储过程和函数

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了用sql语句导出oracle中的存储过程和函数相关的知识,希望对你有一定的参考价值。

用sql语句导出oracle中的存储过程和函数:

SET echo off ;
SET heading   off ;
SET feedback   off ;
SPOOL C:/PRC.SQL replace
SELECT CASE
         WHEN LINE = 1 THEN
          CREATE OR REPLACE  || TEXT
         WHEN LINE = MAX_LINE THEN
          TEXT || CHR(10 ) || /
         ELSE
          TEXT
       END
  FROM USER_SOURCE A
  LEFT JOIN (SELECT A.NAME,A.TYPE, MAX(LINE) MAX_LINE
               FROM USER_SOURCE A
              WHERE TYPE in ( PROCEDURE, PACKAGE ,PACKAGE BODY )
              GROUP BY A.NAME,A.TYPE ) B ON A.NAME||A.TYPE = B.NAME||B.TYPE
 WHERE A.TYPE in (PROCEDURE ,FUNCTION, PACKAGE, PACKAGE BODY ) AND A.NAME IN
 (
SELECT name FROM ALL_SOURCE  
    WHERE (TYPE=PROCEDURE or type=FUNCTION)
    AND OWNER=‘你的应用实例 
        GROUP BY name
)
ORDER BY a.NAME||a.TYPE , LINE;
SPOOL OFF

 

以上是关于用sql语句导出oracle中的存储过程和函数的主要内容,如果未能解决你的问题,请参考以下文章

mysql 与oracle中的存储过程及函数有啥区别,尽可能详细哦

如何导出存储过程函数包和触发器的定义语句?如何导出表和索引的创建语句?

Oracle 整表导出为update语句(存储过程实现)

oracle数据库可否批量导出存储过程

oracle中的存储过程,有啥作用,以及怎么在代码中使用?

ORACLE存储过程里可以声明过程和函数吗