2009-06-29 11 views

Antwort

9

DBA_PROCEDURES hat die öffentlichen Methoden in einem Paket

SELECT owner, 
     object_name AS package_name, 
     procedure_name AS method_name 
    FROM dba_procedures 
WHERE object_type = 'PACKAGE' 

Wenn Sie auch private Methoden wollen, dass die Informationen im Datenverzeichnis nicht direkt zugänglich ist. In diesem Fall müssten Sie die Quelle analysieren (was natürlich ziemlich schmerzhaft wäre, besonders wenn Sie verschachtelte private Methoden in öffentlichen oder privaten Methoden im Paket haben).

+2

+1, würden Sie diese Information auch in der USER_PROCEDURES und ALL_PROCEDURES öffentlichen Ansichten erhalten –

1

folgend all Verfahren und Funktionsnamen von einem bestimmten Paket zurück:

SELECT procedure_name FROM user_procedures WHERE object_name='mypackagename';