2016-11-02 4 views
0

スタックオーバーフローの仕組みはわかっていますが、私の調査結果を投稿するためのデータまたはSQLスクリプトはありません。カーソルまたはwhileループを使用したすべてのストアドプロシージャを検索するクエリ

私はたくさんのGoogle検索を行っていますが、探しているものが見つかりませんでした。

カーソルやループを使用しているDB内のストアドプロシージャや関数のリストをSQLベースのステートメントに変更できる場所にSQLスクリプトを置くことはできますか?

可能であれば、どのストアドプロシージャが動的クエリを使用しているかを知ることができますか?

それぞれのストアドプロシージャを手動でチェックしたいので、自動化されたアプローチを探しています。

ありがとうございます!

+0

手順コードは**ベンダー固有のもの** ** - mysql、 'postgresql'、' sql-server'、 'oracle'、' db2'のどれを使用するのかを指定するタグを追加してください - または全く別のもの。 –

+0

こんにちは!この質問は解決されますか?さらに助けが必要ですか?私に1つのヒントを許してください:この質問が解決された場合は、(最良の)回答の投票カウンタの下で受け入れ検査をチェックすることは、非常に親切です。これは、1)この問題を解決済みとマークします。2)フォロワーが最良の解決策を見つけるのをより簡単にします。3)回答者にポイントを払います。 15ポイントのボーダーを越えたので、あなたは - さらに - 寄付に投票するように求められます。これは、ありがとうと言います。ハッピーコーディング! – Shnugo

答えて

0

あなたのSPおよび他の目的は、あなたがこの

SELECT * FROM INFORMATION_SCHEMA.ROUTINES WHERE ROUTINE_DEFINITION LIKE '%EXEC%(%' 
              OR ROUTINE_DEFINITION LIKE '%WHILE%' 
              OR ROUTINE_DEFINITION LIKE '%CURSOR%' 

この意志のようなものを試してみてくださいencrypetedされていない場合は - 確かに - どのような方法で、スマートではないが、あなたはより良いヒットを得るために、さらに条件を追加することができます。 ..

関連する問題