確実な方法はありませんが、 regexp_like
を使用して user/all/dba_source を検索できます 単語全体をチェックし、それを user/all/dba_dependencies と相互参照して、チェックするパッケージのリストを絞り込みます。
select s.name, s.type, s.line, s.text
from user_source s
where ltrim(s.text,chr(9)||' ') not like '--%'
and regexp_like(lower(s.text),'\Wyour_column_name_here\W')
and (s.name, s.type) in
( select d.name, d.type
from user_dependencies d
where d.referenced_owner = user
and d.referenced_name = 'YOUR_TABLE_NAME_HERE' );
または、他のスキーマからの参照がある可能性がある場合、
select s.owner, s.name, s.type, s.line, s.text
from all_source s
where ltrim(s.text,chr(9)||' ') not like '--%'
and regexp_like(lower(s.text),'\Wyour_column_name_here\W')
and (s.owner, s.name, s.type) in
( select d.owner, d.name, d.type
from all_dependencies d
where d.referenced_owner = user
and d.referenced_name = 'YOUR_TABLE_NAME_HERE' );
select distinct s.owner, s.name, s.type ...
だけを使用するようにすることもできます。 調査するオブジェクトのリストを取得します。