1. ホーム
  2. sql-server-2008

[解決済み] SQL Serverストアドプロセスのオプションパラメータ?

2022-03-13 20:20:24

質問

SQL Server 2008でストアドプロックを書いているのですが、オプションの入力パラメータという概念はここで可能なのでしょうか?

私は常に使用したくないパラメータにNULLを渡し、ストアドプロックで値をチェックし、そこから物事を進めることができると思いますが、このコンセプトがここで利用可能かどうかに興味がありました。 ありがとうございます。

どのように解決するのですか?

このように宣言することができます。

CREATE PROCEDURE MyProcName
    @Parameter1 INT = 1,
    @Parameter2 VARCHAR (100) = 'StringValue',
    @Parameter3 VARCHAR (100) = NULL
AS

/* check for the NULL / default value (indicating nothing was passed */
if (@Parameter3 IS NULL)
BEGIN
    /* whatever code you desire for a missing parameter*/
    INSERT INTO ........
END

/* and use it in the query as so*/
SELECT *
FROM Table
WHERE Column = @Parameter