Použijte PL/Scope ...
alter session set plscope_settings = 'IDENTIFIERS:ALL';
... a znovu zkompilujte balíček (UTL_LOG
v mém případě) ...
alter package utl_log compile;
alter package utl_log compile body;
... a poté dotaz na user_identifiers
zobrazit ...
select name, type, object_name, object_type, line, col
from user_identifiers
where object_name = 'UTL_LOG'
and usage = 'DECLARATION'
and type not in ('VARIABLE','FUNCTION','FORMAL IN','FORMAL OUT','CONSTANT','PROCEDURE','FUNCTION','PACKAGE')
;
... což by (v mém případě) přineslo ...
NAME TYPE OBJECT_ OBJECT_ LINE COL
------------------- ------- ------- ------- ---- ---
ARR_SOME_COLLECTION VARRAY UTL_LOG PACKAGE 19 6
REC_SOME_RECORD RECORD UTL_LOG PACKAGE 15 6
TYP_LOG_CODE SUBTYPE UTL_LOG PACKAGE 8 9
Poznámka že PL/Scope lze použít pro jakýkoli identifikátor deklarovaný/definovaný v jakémkoli programovou jednotku, nejen pro deklarace datových typů.