2

Oracle DBLink が変更され、古い場所への参照を検索して、新しい場所を指すように更新できるようにする必要があります。ビュー、手順、ジョブ、9 ヤード全体を検索できる必要があります。ビューが多すぎて、一度に 1 つずつ見ることができません。

TOAD または SQL Developer を使用して、データベースに文字列テキストをクエリするにはどうすればよいですか? オブジェクトを検索できるクエリを見つけましたが、それよりも深く検索する必要があります。

ティア

オラクル10G

4

1 に答える 1

3

手順とジョブは比較的簡単に検索できます。

select * from dba_source where upper(text) like '%@MY_LINK%';
select * from dba_jobs where upper(what) like '%@MY_LINK%';
select * from dba_scheduler_jobs where upper(job_action) like '%@MY_LINK%';

しかし、ビューは難しいです:

select * from dba_views where upper(text) like '%@MY_LINK%';
ORA-00932: inconsistent datatypes: expected NUMBER got LONG

LONG の使用方法はいくつかあります。最も簡単なのは、PL/SQL を使用して各テキストを選択することです...into v_varchar2_32767...。しかし、その方法を変更するのは簡単ではありません。

LONG を CLOB に変換するDictionary Long Applicationを調べることができます。次に、次のようなクエリを使用できます。

select *
from table(dla_pkg.query_view('select * from dba_views'))
where upper(text) like '%@MY_LINK%';
于 2013-02-25T19:02:42.423 に答える