方法:ストアド プロシージャをデバッグする

Transact-SQL デバッガーでは、SQL ストアド プロシージャの SQL 呼び出し履歴、ローカル変数、およびパラメーターが表示され、ストアド プロシージャをインタラクティブにデバッグできます。 他のプログラミング言語でのデバッグと同様、Transact-SQL スクリプトのデバッグでも、ローカル変数とパラメーターの表示と修正、グローバル変数の表示、およびブレークポイントの制御と管理を行うことができます。

この例では、Transact-SQL ストアド プロシージャを作成し、ステップ インでデバッグする方法を示します。

Note

Transact-SQL デバッグは、Azure SQL Database や Azure SQL Managed Instance では使用できません。

ストアド プロシージャをデバッグするには

  1. ソリューション エクスプローラーTradeDev プロジェクトを右クリックし、 [追加] をポイントして、 [ストアド プロシージャ] をクリックします。 この新しいストアド プロシージャに AddProduct という名前を付けて、 [追加] をクリックします。

  2. 次のコードをストアド プロシージャに貼り付けます。

    CREATE PROCEDURE [dbo].[AddProduct]  
    @id int,  
    @name nvarchar(128)  
    AS  
    INSERT INTO [dbo].[Product] (Id, Name) VALUES (@id, @name)  
    
  3. F5 キーを押し、プロジェクトのビルドと配置を行います。

  4. SQL Server オブジェクト エクスプローラーの [ローカル] ノードの下で、TradeDev データベースを右クリックし、 [新しいクエリ] をクリックします。

  5. 次のコードをクエリ ウィンドウに貼り付けます。

    EXEC [dbo].[AddProduct] 50, N'Contoso';  
    GO  
    
  6. 左ウィンドウの余白部分をクリックし、EXEC ステートメントにブレークポイントを追加します。

  7. Transact-SQL エディターのツール バーにある緑色の矢印ボタンのドロップダウン矢印をクリックして [デバッガーで実行] を選択し、デバッグをオンにしてクエリを実行します。

  8. または、SQL Server オブジェクト エクスプローラーからデバッグを開始することもできます。 AddProduct ストアド プロシージャ ([ローカル] ->TradeDev データベース ->[プログラミング] ->[ストアド プロシージャ] の順に選択して表示) を右クリックします。 [プロシージャのデバッグ...] をクリックします。オブジェクトにパラメーターが必要な場合には、 [プロシージャのデバッグ] ダイアログ ボックスに、各パラメーターの行を含むテーブルが表示されます。 テーブルの各行には、パラメーター名の列およびパラメーター値の列があります。 各パラメーターの値を入力して、[OK] をクリックします。

  9. [ローカル] ウィンドウが開いていることを確認します。 開いていない場合は、 [デバッグ] メニューの [ウィンドウ] をポイントし、 [ローカル] をクリックします。

  10. F11 キーを押して、ステップ インでクエリを実行します。 ストアド プロシージャのパラメーターとそれぞれの値が [ローカル] ウィンドウに表示されます。 または、INSERT 句内の @name パラメーターの上にマウス ポインターを移動すると、Contoso という値が割り当てられていることがわかります。

  11. テキスト ボックス内で Contoso という文字列をクリックします。 「Fabrikam」と入力して Enter キーを押すことにより、デバッグ中の name 変数の値を変更します。 [ローカル] ウィンドウで値を変更することもできます。 パラメーターの値が赤色で表示されます。これは、変更があったことを示します。

  12. F10 キーを押して、残りのコードをステップ オーバーで実行します。

  13. SQL Server オブジェクト エクスプローラーで、Product テーブルのデータ ビューに新しいコンテンツを表示するために、[TradeDev] データベース ノードを更新します。

  14. SQL Server オブジェクト エクスプローラーの [ローカル] ノードの下で、TradeDev データベースの Product テーブルを探します。

  15. Product テーブルを右クリックし、 [データの表示] をクリックします。 テーブルには、新しい行が追加されています。