2009-03-10 8 views
12

SELECT * from ALL_OBJECTSは、さまざまなプロシージャ/パッケージ/テーブル/その他のdbオブジェクトの名前を返します。私は一致する文字列のPL/SQLコードを調べたい。これはどうすればいいですか?検索PL/SQLコード

ような何か:all_code FROM line_of_code '%のMYTEXTの%' のような(擬似コード)SELECT *

答えて

28

使用のようなもの:

SELECT * 
     FROM USER_SOURCE 
    WHERE type='PACKAGE' 
     AND NAME='PACKAGE_NAME' 
    ORDER BY type, name, line; 

多くのオプションがありますが、USER_SOURCEテーブルをチェックしてください。

は、文字列のためのすべてのコードを検索するには、次のコードを表示

SELECT * 
    FROM ALL_SOURCE 
    WHERE UPPER(text) LIKE UPPER('%what I am searching for%') 
ORDER BY type, name, line 

注意_SOURCEの表には含まれていません。ビューコードはLONG​​列であり、照会するのが難しい[USER|ALL|DBA]_VIEWS.TEXTに格納されています。

+2

またはALL_SOURCE WHERE OWNER = [schema] – cagcowboy

+2

「ORDER BY type、name、line」を使用すると、結果がより明確になります。 – Barry

+2

大文字と小文字を区別しないでください:upper(text)like upper(%%私が探しているもの%) – tuinstoel

関連する問題