SQLServerで省略可能な引数を持ったストアドプロシージャを作る

プログラミング SQL Server

SQLServerで省略可能な引数を持ったストアドプロシージャーを作ります。

省略可能にするには引数にデフォルト値を持たせます。

指定方法は「@<引数名> <型> = <デフォルト値>」で指定します。

    CREATE PROCEDURE test_proc 
         @key_cd int
        ,@start_date as varchar(10) = '2000/01/01' 
        ,@end_date as varchar(10) = '2020/12/31' 
    AS
    BEGIN
           ・
           ・
           ・

引数を全部指定。

    EXEC test_proc 100, '2012/10/10', '2012/12/31'

引数をデフォルト値のないものだけ指定。

    EXEC test_proc 100

これでも呼出可能です。

上記で呼出した結果は

    EXEC test_proc 100, '2000/01/01', '2020/12/31'

で呼び出したのと同じ結果にまります。

タイトルとURLをコピーしました