ほとんどの人がSQLServerストアドプロシージャの定義を確認したい場合は、SSMSを起動してオブジェクトを見つけ、右クリックして[変更]または他のスクリプトオプションの1つを選択します。これは手動で正常に機能します。
コンパイルされたデータベースオブジェクトを検索、比較、分析できるRedgate製品のライセンスを取得できる幸運な人もいます。
しかし、SQLServerインスタンスでコンパイルされたストアドプロシージャやその他のオブジェクトを分析するデスクトップユーティリティを作成したいとします。そのようなソフトウェア設計に対応するように設計されたものは、主流にはほとんどないようです。
だから私の質問は:C#とすぐに利用できるNuGetパッケージを使用して、SQLデータベースに接続し、SSMSを使用してクエリウィンドウにレンダリングされるのと同じDDLスクリプトを返すことさえ可能ですか?
私が望むほとんどすべてをカバーするユーティリティがすでにたくさんあることを私は知っていますが、これはプログラミングの質問であり、製品の推奨の要求ではありません。
あなたは経由でコードを覗くことができます sys.sql_modules
例
SELECT [schema_name] = OBJECT_SCHEMA_NAME([object_id])
,[object_name] = OBJECT_NAME([object_id])
,*
FROM sys.sql_modules
--WHERE OBJECT_SCHEMA_NAME([object_id]) = 'dbo'
-- AND OBJECT_NAME([object_id]) = '<<some store procedure or UDF>>'
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加