ユーザ自作のSQLで、INVALID状態のオブジェクトを調べることは可能です。
オブジェクトブラウザは、同じ事を陰で処理しているだけです。
リコンパイルも行えます。
"ビュー等"という事ですが、どのようなオブジェクトに対応すれば良いのか
判らないので、ビューについてだけ、リコンパイルするスクリプトを掲示します。
declare
cursor CUR1 is select * from all_objects where object_type='VIEW' and status<>'VALID';
begin
for cur_record in cur1 loop
execute immediate
'alter view '||cur_record.owner||'.'||cur_record.object_name||' compile';
end loop;
end;
こんな感じでビューのリコンパイルが自動化できるはずです。
お礼
回答ありがとうございます。 これで、作業が早く進みます。 object_typeを他のもの(例えばテーブルやパッケージ)にし、 動的SQLも同様にすれば、view以外でも使えますね。