次の方法で共有


方法 : ストアド プロシージャおよびユーザー定義関数でパラメーターを使用する

パラメーターを使用すると、実行時に指定された値を使用する柔軟な SQL ルーチンを作成できます。 パラメーターはプロシージャを実行するたびに変更できるため、一致させる値ごとに 1 つの SQL ルーチンを作成する必要はありません。

たとえば、Microsoft SQL Server データベースでは、employee テーブルから入社日が指定の日付に一致する従業員を検索する場合、ストアド プロシージャに @HireDate パラメーターを追加できます。 異なる入社日を指定するたびに、このストアド プロシージャを実行できます。 また、複数のパラメーターを使用して、日付の範囲を指定することもできます。 たとえば、ストアド プロシージャの where 句で @BeginningDate および @EndingDate という 2 つのパラメーターを作成して、プロシージャを実行する入社日の範囲を指定できます。

ストアド プロシージャやユーザー定義関数でパラメーターを使用すると、次の処理を実行できます。

  • 処理の成功または失敗、および失敗の理由を示すステータス値を、ほかの SQL ルーチンに返す。

  • パラメーター値をほかの関数やストアド プロシージャに渡す。

定数の代わりにパラメーターを使用することはできますが、テーブル名、列名、またはほかのデータベース オブジェクトの代わりに使用することはできません。 サーバー エクスプローラーでは、パラメーターを含むストアド プロシージャやユーザー定義関数を実行するときに、パラメーター値を指定するように要求されます。

注意

実際に画面に表示されるダイアログ ボックスとメニュー コマンドは、アクティブな設定またはエディションによっては、ヘルプの説明と異なる場合があります。 設定を変更するには、[ツール] メニューの [設定のインポートとエクスポート] をクリックします。 詳細については、「設定の操作」を参照してください。

ストアド プロシージャやユーザー定義関数のパラメーターを表示するには

  • サーバー エクスプローラーで、ストアド プロシージャの名前またはユーザー定義関数の名前を展開します。

    SQL ルーチン名の下にパラメーターの一覧が表示されます。 Microsoft SQL Server データベースのパラメーター名は "@" という文字で始まります。 たとえば、@percentage と表示されます。

実行中の SQL ルーチンのパラメーター値を入力するには

  1. ストアド プロシージャまたはユーザー定義関数を実行します。

    SQL ルーチンにパラメーターが含まれている場合は、[ストアド プロシージャの実行] ダイアログ ボックスまたは [関数の実行] ダイアログ ボックスが表示されます。

  2. 各パラメーターについて、使用する値を入力します。 パラメーターのデータ型に応じた値を指定してください。

  3. パラメーター値の入力が終了したら、[OK] をクリックします。

データベースにおけるパラメーターの処理の詳細と例については、使用するデータベース サーバーのドキュメントを参照してください。 Microsoft® SQL Server™ を使用している場合は、『SQL Server Books Online』の「パラメーター」を参照してください。

参照

その他の技術情報

ストアド プロシージャおよびユーザー定義関数の使用