SQLストアドプロシージャをファイルにエクスポートしてスクリプトを生成する
以前の記事では、SQL Serverデータベース内の不完全な開いているトランザクションを検索して削除する一般的なアルゴリズムを見直し、不完全なトランザクションを修正するためのテーブルとCRUDストアドプロシージャを作成し、ドキュメントのワークフローを生産的で便利にするための多数の設定を実装しました。
ここで、ストアドプロシージャをエクスポートしてテストし、そのコードを生成してスクリプトに変換しましょう–適切なエントリパラメータを指定すること
SQL Serverでストアドプロシージャをエクスポート
ストアドプロシージャをファイルにエクスポートしたり、ストアドプロシージャを他のソリューションにコ これを行うには、次の手順に従います:
- オブジェクトエクスプローラーで、データベースを右クリックします
- 表示されるコンテキストメニューからタスクを選択します
- スクリプトの生成コマン
- スクリプトを作成するオブジェクトを選択します
- スクリプトオプションの設定ウィンドウで、ファイルにスクリプトを選択します
- 生成されたスクリプトをターゲットデータベースに対して実行します。
これらのすべての手順が実行されると、エクスポートされたストアドプロシージャの生成されたスクリプトが取得されます。
ストアドプロシージャのテスト
パート2で作成したストアドプロシージャに戻りましょう。 ストアドプロシージャにカーソルをドラッグすると、ドロップダウンメニューがポップアップ表示されます:
正常に動作するには、ストアドプロシージャに説明が必要です。 まだ追加されていない場合は、次のスクリプトを実行してください:
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Identification of frozen transactions (forgotten ones that do not have active requests) with their subsequent removal' , @level0type=N'SCHEMA',@level0name=N'srv', @level1type=N'PROCEDURE',@level1name=N'AutoKillSessionTranBegin'
GO
または、オブジェクトの拡張プロパティに移動します:
このメソッドを使用して説明を追加することもできます。
ストアドプロシージャのコード生成
ストアドプロシージャのドロップダウンメニューを右クリックし、”スクリプトオブジェクトを作成/変更する”を選択”:
で”スクリプトオブジェクトを作成/変更として”を選択すると、オブジェクト変更のスクリプトがポップアップ表示されます。 オブジェクトがない場合は、それを作成するためのスクリプトがあります。 このスクリプトは、適切なMS SQL Serverインスタンスに簡単に移動できます。
ストアドプロシージャコードをスクリプトに変換
ドロップダウンメニューで”EXECをスクリプトに変換”を選択できます:
で”EXECをスクリプトに変換”コマンドを選択すると、ストアドプロシージャを呼び出すのではなく、スクリプトが作成され、入力パラメータが変数になり、ストアドプロシージャの内容がスクリプトになります。 これは、コードをテストするときに便利な機能です:
これで、エントリパラメータの適切な値を設定することにより、任意のホストまたはホストのグルー
クエリ作成履歴
もう一つの重要な機能–SQL Complete:以前のクエリを表示する実行履歴を確認しましょう。 これを行うには、[SQL Complete:Execution History]ボタンをクリックします。:
で”実行履歴”コマンドを選択すると、次のウィンドウが表示されます:
ウィンドウの左上隅には単語と時間範囲のフィルタが含まれ、右隅にはフィルタに入力されたデータに基づいて検 ウィンドウの下側には、テーブルから選択されたクエリが表示されます。
テーブルは次の列で構成されています:
- ステータス–クエリが正常に完了したかどうか(緑の円に白いチェックマーク)かどうか(赤い円に白い十字)
- QueryText–クエリテキストを表示
- Size(Bytes)–バイト単位で測定さクエリが実行されるのにかかった時間
- file–ファイル名とそのフルパスを表示
- server–サーバー名を表示
- user–スクリプトを実行したユーザーを表示
- database–ファイル名とフルパスを表示
- server–サーバー名を表示
- user–スクリプトを実行したユーザーを表示
- database-スクリプトを実行したユーザーを表示
- database-スクリプトを実行したユーザーを表示
スクリプトが実行されたデータベース
“QueryText”および”Execution On”列の検索は、”Search”および”From/To”フィルタで行われます。
適切な列のヘッダーをクリックすることで、データ列を昇順または降順に並べ替えることもできます。 デフォルトでは、”実行時”列の並べ替えは降順で有効になっています。
SHIFTボタンを押すと、複数の列を同時に並べ替えることができます。 フィルター記号をクリックして、より複雑なフィルターを設定することもできます:
ストアドプロシージャ名”AutoKillSessionTranBegin”を”検索”フィルタに入力しましょう:
その結果、srvの完全な作成履歴が得られます。前に説明したAutoKillSessionTranBegin手順。
適切なテーブル行を右クリックすると、新しいウィンドウでスクリプトを開くか、クリップボードにコピーして必要な場所に貼り付けることができます:
テーブル行の目的のスクリプトをダブルクリックすると、新しいウィンドウでスクリプトを開くことが
実行履歴の保存期間、最大クエリサイズ、履歴保存パスを指定することもできます:
の”実行履歴”コマンド設定では、実行履歴機能の詳細については、こちらを参照してください。
それだけだ、みんな。 新しい機能は、開発、テスト、および適切なMS SQL Serverインスタンスに移動されました。
- 著者
- 最近の投稿
Evgeniy Gribkov
Evgeniy Gribkovによる最新の投稿(すべて見る)
- SQL Serverでローカル一時テーブルを削除するためのストアドプロシージャの作成-2021年6月16日
- 専用リンクソース管理リポジトリ-2021年5月6日
- SQL Serverのソー5, 2021
sql complete,sql server,sql serverトランザクション,sqlストアドプロシージャ