質問

っている問題に膨大な数の遺産保存の手続きです。んだを推奨するツールで、でき理解者でしょうか。一部のリバースエンジニアリングに対するindentifies間の依存関係の手続き又は手続の対テーブルの依存関係.できる無料または商用ツールです。

よろしく!

役に立ちましたか?

解決

Redgate"日本でしかできない高価な製品という SQL依存性トラッカー ということを満たします。

他のヒント

に安価な液より"依存関係のトラッカーのデータ辞書のテーブルはsys.sql_dependenciesるかこのデータを問い合わせることができからのデータ辞書で調べました。Oracleはデータ辞書ビューにも同様の機能を持つというDBA_DEPENDENCIES(プラスと同等USER_とALL_する必要があります。)の他のデータ辞書のテーブル(sys.テーブル/DBA_TABLES)など。形を生成することができますオブジェクトの依存関係す。

する関心が使用できるクエリを再帰的(Oracleの接続にはSQL Serverに共通テーブルの表情を完全なオブジェクト依存関係のグラフで表示します。

以下に例を示しますの再帰的熱膨張係数sys.sql_dependencies.じていますが、これらのエントリ毎に依存。項目があり、その異なる深度には、依存関係です。持っていない作業Oracleのインスタンスの構築に向け接続によるクエリにDBA_DEPENDENCIESなどの編集権限の時間と専門知識がある方歓迎に注釈を付けまたは編集しています。

注も sys.sql_dependencies できることをめざすカラム参照 referenced_minor_id.この使用できる(例えば)をカラムが実際に使われているETL sprocsからの集積とのDBテーブルからのソースをよりカラム以外で実際に使用します。

with dep_cte as (
select o2.object_id  as parent_id
      ,o2.name       as parent_name
      ,o1.object_id  as child_id
      ,o1.name       as child_name
      ,d.referenced_minor_id
      ,1 as hierarchy_level
  from sys.sql_dependencies d
  join sys.objects o1
    on o1.object_id = d.referenced_major_id
  join sys.objects o2
    on o2.object_id = d.object_id
 where d.referenced_minor_id in (0,1)
   and not exists
       (select 1
          from sys.sql_dependencies d2
         where d2.referenced_major_id = d.object_id)

union all

select o2.object_id  as parent_id
      ,o2.name       as parent_name
      ,o1.object_id  as child_id
      ,o1.name       as child_name
      ,d.referenced_minor_id
      ,d2.hierarchy_level + 1 as hierarchy_level
  from sys.sql_dependencies d
  join sys.objects o1
    on o1.object_id = d.referenced_major_id
  join sys.objects o2
    on o2.object_id = d.object_id
  join dep_cte d2
    on d.object_id = d2.child_id
 where d.referenced_minor_id in (0,1)
)

select *
  from dep_cte
 order by hierarchy_level

私はこれを開き、地域です。もっと便利なアクセスにOracleをインスタンスの後、接続による再帰的なクエリ。これは、SQL-server特定とそのオーナー様から明らかにしたのを用いますので、Oracle社思っていたランニングOracleインスタンスを手の開発-テストです。

と思い、 赤ゲートの依存関係のトラッカーによるrpetrich でもソードを動作させることができ、Red Gateには、30日の試作(理想的にはがんだフォレンジック).

いた"という考えを分離することでシステムの SQLプロファイラを示すすべてのSQLに対するテーブル.この場合が多いと思い を進めていくうえで良い出発点を築くためのシーケンス図はただの文書これらのコード.幸運を祈っています。

Redgate SQL Doc.生成された文書を含むの相互参照依存関係の情報です。例えば、各テーブル、リスト、およびトリガー等を参照すること。

何のデータベースに格納手続いますか?Oracle、SQL Server、何か?

編集に基づくコメント: ただOracle利用してみてください 道路.使うのが特徴で、コードのロードマップ、グラフィカルに表示できPL/SQL interdependancies内のデータベースです。でコードのみモードで、実行時の呼び出しスタックdependancies、コードのプラスデータモードのときデータベースオブジェクト(テーブル、トリガー)に触れるコードです。

(注意-私は道路には、ユーザ得ないから参照で)

こんリアル深部または徹底するかという問題はあろうが、使用している場合は、MS SQL ServerやOracleもNigelできるPL-SQLサンプル)...Nigelはん。これだけが3依存関係の深いものの、変更することができ行きが深ます。で最も美しいものです---その機能的---

select 
    so.name + case when so.xtype='P' then ' (Stored Proc)' when so.xtype='U' then ' (Table)' when so.xtype='V' then ' (View)' else ' (Unknown)' end as EntityName, 
    so2.name + case when so2.xtype='P' then ' (Stored Proc)' when so2.xtype='U' then ' (Table)' when so2.xtype='V' then ' (View)' else ' (Unknown)' end as FirstDependancy,
    so3.name + case when so3.xtype='P' then ' (Stored Proc)' when so3.xtype='U' then ' (Table)' when so3.xtype='V' then ' (View)' else ' (Unknown)' end as SecondDependancy,
    so4.name + case when so4.xtype='P' then ' (Stored Proc)' when so4.xtype='U' then ' (Table)' when so4.xtype='V' then ' (View)' else ' (Unknown)' end as ThirdDependancy
from 
  sysdepends sd 
    inner join sysobjects as so on sd.id=so.id 
    left join sysobjects as so2 on sd.depid=so2.id
    left join sysdepends as sd2 on so2.id=sd2.id and so2.xtype not in ('S','PK','D')
    left join sysobjects as so3 on sd2.depid=so3.id and so3.xtype not in ('S','PK','D')
    left join sysdepends as sd3 on so3.id=sd3.id and so3.xtype not in ('S','PK','D')
    left join sysobjects as so4 on sd3.depid=so4.id and so4.xtype not in ('S','PK','D')
where so.xtype = 'P' and left(so.name,2)<>'dt'
group by so.name, so2.name, so3.name, so4.name, so.xtype, so2.xtype, so3.xtype, so4.xtype

どのように、依存関係のチェーンのデータベースオブジェクト MS SQL Server2000年(?)+) によるジェイコブセバスチャン

またニーズ、コーポレート-ガバナンスを新たな報告書またはモジュールを変更することを 報告では、そのニーズを知ることからデータベースオブジェクトに依存 指定された報告書を格納す。一回の報告は非常に 複雑な各タが十数依存性 オブジェ互依存のオブジェクトが依存している可能性があるその他の何十人もの オブジェクト。

必要な方を再帰的にすべてに応じてのオブジェクト 定保存きます。書いた再帰的クエリを用い熱膨張率を達成 ます。

最もあてはツールバー工学によるアペックス.その驚かされます。でも追跡します。純センブリーだが、procsを使用します。その深い製品。RedGateはその他の工具がないます。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top