次の方法で共有


ブレークポイント アクションの指定

ブレークポイント ヒット時アクションは、ブレークポイントに対して Transact-SQL デバッガーが実行するカスタム タスクを指定します。 指定したヒット カウントに達し、指定したブレークポイントの条件が満たされると、ブレークポイントに指定されたアクションがデバッガーによって実行されます。

アクションに関する注意点

ブレークポイントの既定のアクションでは、ヒット カウントとブレークポイントの条件の両方が満たされたときに、実行が中断されます。 Transact-SQL デバッガーでヒット時アクションを使用する主な用途は、出力メッセージを指定して、デバッガーの [出力] ウィンドウに情報を出力することです。

出力メッセージは [メッセージを出力] オプションで指定され、デバッグされている Transact-SQL からの情報を格納した式を含むテキスト文字列として指定されます。 式には、次の内容が含まれます。

  • 中かっこ ({}) に囲まれた Transact-SQL 式。 式には、Transact-SQL 変数、パラメーター、および組み込み関数を含めることができます。 たとえば、{@MyVariable}、{@NameParameter}、{@@SPID}、または {SERVERPROPERTY(‘ProcessID’)} です。

  • 次のキーワードのいずれかになります。

    1. $ADDRESS は、ブレークポイントが設定されているストアド プロシージャまたはユーザー定義関数の名前を返します。 ブレークポイントがエディター ウィンドウに設定されている場合、$ADDRESS は編集されているスクリプト ファイルの名前を返します。 $ADDRESS および $FUNCTION は、Transact-SQL デバッガーで同じ情報を返します。

    2. $CALLER は、ストアド プロシージャまたは関数を呼び出した Transact-SQL コードの単位の名前を返します。 ブレークポイントがエディター ウィンドウにある場合は、$CALLER は <No caller available> を返します。 ブレークポイントが、エディター ウィンドウ内のコードから呼び出されるストアド プロシージャまたはユーザー定義関数にある場合は、$CALLER は編集されているファイルの名前を返します。 ブレークポイントが、他のストアド プロシージャまたは関数から呼び出されるストアド プロシージャまたはユーザー定義関数にある場合は、$CALLER は呼び出しているプロシージャまたは関数の名前を返します。

    3. $CALLSTACK は、現在のストアド プロシージャまたはユーザー定義関数を呼び出したチェーン内の関数の呼び出し履歴を返します。 ブレークポイントがエディター ウィンドウにある場合、$CALLSTACK は編集されているスクリプト ファイルの名前を返します。

    4. $FUNCTION は、ブレークポイントが設定されているストアド プロシージャまたはユーザー定義関数の名前を返します。 ブレークポイントがエディター ウィンドウに設定されている場合、$FUNCTION は編集されているスクリプト ファイルの名前を返します。

    5. $PID および $PNAME は、Transact-SQL が実行されているデータベース エンジンのインスタンスを実行しているオペレーティング システム プロセスの ID および名前を返します。 $PID は、SERVERPROPERTY(‘ProcessID’) と同じ ID を返しますが、SERVERPROPERTY(‘ProcessID’) が 10 進値であるのに対して $PID は 16 進数の値である点が異なります。

    6. $TID および $TNAME は、Transact-SQL バッチを実行しているオペレーティング システム スレッドの ID および名前を返します。 スレッドは、データベース エンジンのインスタンスを実行しているプロセスに関連付けられています。 $TID は SELECT kpid FROM sys.sysprocesses WHERE spid = @@SPID と同じ値を返しますが、kpid が 10 進値であるのに対して $TID は 16 進数の値である点が異なります。

  • \{、\} および \\ のように、円記号 (\) をエスケープ文字として、メッセージ内に中かっこと円記号を使用することもできます。

ヒット時アクションを指定するには

  1. エディター ウィンドウで、ブレークポイント グリフを右クリックし、ショートカット メニューの [ヒット時] をクリックします。

    - または -

    [ブレークポイント] ウィンドウで、ブレークポイント グリフを右クリックし、ショートカット メニューの [ヒット時] をクリックします。

  2. [ブレークポイントのヒット時] ダイアログ ボックスで、目的の動作を選択します。

    1. ブレークポイントにヒットしたときにデバッガーの出力ウィンドウにメッセージを出力するには、[メッセージを出力] を選択します。

    2. [マクロを実行] オプションは Transact-SQL デバッガーで使用することはできず、グレーで表示されます。

    3. ブレークポイントの実行を中断したくない場合は、[続けて実行する] を選択します。 このオプションは、[メッセージを出力] オプションを選択した場合にのみ有効です。

  3. [OK] をクリックして変更を適用するか、[キャンセル] をクリックして変更を適用せずに終了します。

関連項目

タスク

ブレークポイント条件の指定

ヒット カウントの指定