Ist es möglich, die Namen aller Prozeduren und Funktionen in einem bestimmten Paket abzurufen? Ich verstehe, dass sie aus der ALL_SOURCE
Ansicht (Gerüche hack-ish) erfasst werden können, aber ich würde eine kanonische Strategie bevorzugen.PL/SQL: Abrufen von Namen von Prozeduren und Funktionen in einem Paket
4
A
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).
1
folgend all Verfahren und Funktionsnamen von einem bestimmten Paket zurück:
SELECT procedure_name FROM user_procedures WHERE object_name='mypackagename';
+1, würden Sie diese Information auch in der USER_PROCEDURES und ALL_PROCEDURES öffentlichen Ansichten erhalten –