ストアド プロシージャを作成する方法 (SQL Server Management Studio)
このトピックでは、SQL Server Management Studio のオブジェクト エクスプローラーを使用して Transact-SQL ストアド プロシージャを作成する方法と、AdventureWorks2008R2 データベース内に単純なストアド プロシージャを作成する例について説明します。
ストアド プロシージャを作成するには
オブジェクト エクスプローラーで、データベース エンジンのインスタンスに接続し、そのインスタンスを展開します。
[データベース] を展開し、ストアド プロシージャが属するデータベースを展開して、[プログラミング] を展開します。
[ストアド プロシージャ] を右クリックし、[新しいストアド プロシージャ] をクリックします。
[クエリ] メニューの [テンプレート パラメーターの値の指定] をクリックします。
[テンプレート パラメーターの値の指定] ダイアログ ボックスの [値] 列には、パラメーターの推奨値が表示されます。値をそのまま使用するか、または新しい値に置き換えて、[OK] をクリックします。
クエリ エディターで、SELECT ステートメントをプロシージャのステートメントに置き換えます。
構文をテストするには、[クエリ] メニューの [解析] をクリックします。
ストアド プロシージャを作成するには、[クエリ] メニューの [実行] をクリックします。
スクリプトを保存するには、[ファイル] メニューの [保存] をクリックします。ファイル名をそのまま使用するか、または別の名前を入力し、[保存] をクリックします。
セキュリティに関する注意 |
---|
すべてのユーザー入力を検証します。ユーザー入力は検証するまで連結しないでください。検証していないユーザー入力から作成したコマンドを実行してはいけません。詳細については、「SQL インジェクション」を参照してください。 |
ストアド プロシージャの作成例
オブジェクト エクスプローラーで、データベース エンジンのインスタンスに接続し、そのインスタンスを展開します。
[データベース] を展開し、AdventureWorks2008R2 データベースを展開して、[プログラミング] を展開します。
[ストアド プロシージャ] を右クリックし、[新しいストアド プロシージャ] をクリックします。
[クエリ] メニューの [テンプレート パラメーターの値の指定] をクリックします。
[テンプレート パラメーターの値の指定] ダイアログ ボックスで、各パラメーターに次の値を入力します。
パラメーター
値
[Author]
名前
[Create Date]
今日の日付
[Description]
従業員のデータが返されます
[Procedure_name]
HumanResources.uspGetEmployees
[@Param1]
@LastName
[@Datatype_For_Param1]
nvarchar(50)
[Default_Value_For_Param1]
NULL
[@Param2]
@FirstName
[@Datatype_For_Param2]
nvarchar(50)
[Default_Value_For_Param2]
NULL
[OK] をクリックします。
クエリ エディターで、SELECT ステートメントを次のステートメントに置き換えます。
SELECT FirstName, LastName, JobTitle, Department FROM HumanResources.vEmployeeDepartment WHERE FirstName = @FirstName AND LastName = @LastName;
構文をテストするには、[クエリ] メニューの [解析] をクリックします。エラー メッセージが返された場合は、ステートメントと上記の情報を比較し、必要に応じて修正します。
ストアド プロシージャを作成するには、[クエリ] メニューの [実行] をクリックします。
スクリプトを保存するには、[ファイル] メニューの [保存] をクリックします。新しいファイル名を入力し、[保存] をクリックします。
ストアド プロシージャを実行するには、ツール バーの [新しいクエリ] をクリックします。
クエリ ウィンドウで、次のステートメントを入力します。
USE AdventureWorks2008R2; GO EXECUTE HumanResources.uspGetEmployees @FirstName = N'Diane', @LastName = N'Margheim'; GO
[クエリ] メニューの [実行] をクリックします。