ノウハウ

ストアドプロシージャのソースコードを確認する

2017年10月26日

PL/SQLのソースコードを確認する方法を紹介します。

ファンクションプロシージャトリガーに使用することができます。

サンプルプロシージャ

今回は↓のプロシージャを使用します。
create or replace procedure TEST001.SAMPLE_PROGRAM(args01 in number) as
begin
dbms_output.put_line('Hello World.');
dbms_output.put_line('Argument' || args01);
end;
/

ソースコードの確認

ソースコードは↓のソースコードを確認します。
set pagesize 0
set line 10000
select TEXT
from DBA_SOURCE
where OWNER = '作成スキーマ名'
and NAME = 'ストアドプロシージャ名'
order by LINE;
↓がサンプルを確認した結果です。
> set pagesize 0
> set line 10000
> select TEXT
2 from DBA_SOURCE
3 where OWNER = 'TEST001'
4 and NAME = 'SAMPLE_PROGRAM'
5 order by LINE;

procedure SAMPLE_PROGRAM(args01 in number) as
begin
dbms_output.put_line('Hello World.');
dbms_output.put_line('Argument' || args01);
end;

これでリバースエンジニアリングもバッチリです。

ただしwrapしているソースコードは確認することができません。

引数の確認

念のため引数の確認も記載しておきます。↓がサンプルです。
desc スキーマ名.ストアドプロシージャ
↓がサンプルです。
SQL> desc TEST001.SAMPLE_PROGRAM
PROCEDURE TEST001.SAMPLE_PROGRAM
引数名 タイプ In/Out Default?
------------------------------ ----------------------- ------ --------
ARGS01 NUMBER IN

 

関連記事

-ノウハウ

Copyright© スタートアップIT企業社長のブログ , 2020 All Rights Reserved.