まずSQLファイルを作成します。
CドライブにCreate.sqlでファイルを作成したとします。
ストアドの出力先はCドライブのOutput.sqlとしています。
set echo off set heading off set termout off set pause off set pagesize 0 set linesize 1000 set trimspool on set feedback off spool C:\Output.sql SELECT TEXT FROM ALL_SOURCE WHERE NAME = 'ストアド名' ORDER BY TYPE, LINE; spool off; quit
次にバッチファイルを作成します。
CドライブにCreate.batでファイルを作成したとします。
sqlplusを使用して先ほど作成したsqlファイルを実行します。
sqlplus Oracleユーザー名/パスワード@データベース名 @C:\Create.sql
バッチを実行すると、ストアドの内容が「そのまま」出力されています。
ストアドの内容をCreate文付きで出力するのならコチラ。
set pages 0 set lines 200 set long 65535 set longc 65535 set trimspool on spool 出力先ファイルパス SELECT DBMS_METADATA.GET_DDL(OBJ.OBJECT_TYPE, OBJ.OBJECT_NAME, OBJ.OWNER) AS SCRIPT FROM DBA_OBJECTS OBJ WHERE OBJ.OWNER ='ユーザー名' AND OBJ.OBJECT_TYPE ='PACKAGE' AND OBJ.OBJECT_NAME ='ストアド名'; spool off; quit
0 件のコメント:
コメントを投稿