web-dev-qa-db-ja.com

Oracleデバッグコンパイル済みストアドプロシージャ/関数を見つける方法

デバッグ用にコンパイルされたストアドプロシージャ/関数のリストを取得するにはどうすればよいですか?

次の表に関連する列がありません。

  • DBA_PROCEDURES
  • DBA_OBJECTS
2
Atilla Ozgur

Philの回答に感謝します。次のクエリで必要なことを実行し、すべてのデバッグコンパイル済みオブジェクトをコンパイルします。

SELECT 'ALTER ' || object_type || ' ' || owner || '.' || object_name || '     compile;'
FROM   SYS.ALL_PROBE_OBJECTS
WHERE DEBUGINFO = 'T'
ORDER BY owner, object_type, object_name;
2
Atilla Ozgur

DBA_PLSQL_OBJECT_SETTINGSがより適切な情報を提供すると思います。

5
Raj

文書化された方法は次のとおりです。

ALL_PLSQL_OBJECT_SETTINGSビュー、PLSQL_DEBUG列

http://docs.Oracle.com/cd/E16655_01/server.121/e17615/refrn20385.htm#REFRN20385

3
Balazs Papp

覗く SYS.ALL_PROBE_OBJECTSDEBUGINFO列には、デバッグモードでコンパイルされたかどうかを示すT(true)またはF(false)が含まれます。

2
Philᵀᴹ

将来の補足情報のためだけに

SELECT PO.OWNER,PO.OBJECT_NAME,PO.OBJECT_TYPE,PO.DEBUGINFO
,'ALTER ' || REPLACE(object_type,'PACKAGE BODY','PACKAGE') || ' ' || owner || '.' || object_name ||DECODE(object_type,'PACKAGE BODY',' COMPILE BODY;',' COMPILE;') COPILE_NO_DEBUG
,'ALTER ' || REPLACE(object_type,'PACKAGE BODY','PACKAGE') || ' ' || owner || '.' || object_name ||DECODE(object_type,'PACKAGE BODY',' COMPILE DEBUG BODY;',' COMPILE DEBUG;') COPILE_WITH_DEBUG
FROM   SYS.ALL_PROBE_OBJECTS PO
--WHERE OBJECT_NAME='YOUR_DEFINITION_PKG' AND DEBUGINFO IN ('F','T')
ORDER BY owner, object_type, object_name;
1
Jason Smartree