1

Oracle データベースのすべてのテーブル、ビュー、 JOBS、およびPROCEDURESをクエリできるクエリを探しています。テーブルとビューで機能するクエリへのリンクをいくつか見つけましたが、ジョブ手順が必要です。このすべてに 1 つのクエリを使用できない場合は、少なくともジョブと手順が必要です。

テーブルとビューについて私が見つけたものは次のとおりです。

Select TABLE_NAME, COLUMN_NAME from user_tab_columns

ティア

4

1 に答える 1

2

私の推測では、あなたは次のようなものが欲しいと思います

SELECT name, type, line, text
  FROM user_source
 WHERE lower(text) like lower('%<<column name>>%');

これにより、列名を含む任意の pL/SQL オブジェクト (パッケージ、パッケージ本体、プロシージャ、関数、トリガー、型など) のコード行が表示されます。同じ名前の列を持つテーブルが複数ある場合 (つまり、列nameが多くの異なるテーブルにある場合)、すべてのインスタンスが識別されます。コードを検査する以外に、どのクエリがname特定のテーブルの列を参照しているかを判断するための優れた方法はありません。NAME興味のある特定のテーブルを参照するようにand TYPEfromUSER_SOURCEが表示されるかどうかを調べることができDBA_DEPENDENCIESます。しかし、それはオブジェクト レベルでのテーブル レベルの依存関係を示しているだけであり、オブジェクトは多数の異なるテーブルに依存している可能性があります。

于 2012-05-23T18:03:56.523 に答える