引数を省略することができるストアドプロシージャを作成する方法
文書番号:20632
ストアドプロシージャの引数に初期値を設定して、実行時に引数の指定を省略するkとができるストアドプロシージャを作成する方法です。
指定する引数がその引数の初期値と同じ場合は指定する必要がありません。
異なる場合はその引数に指定値を指定することでその引数で実行することができます。
・引数を省略できるストアドプロシージャを作成する
CREATE PROCEDURE TestProcedure
@code char(4)
,@name varchar(50) = '未設定'
,@finish_date date = '2099/12/31'
AS
BEGIN
INSERT INTO Table_1
VALUES (
@code
,@name
,@finish_date
)
END
・引数をすべて指定してストアドプロシージャを実行する
exec TestProcedure '0001','りんご','2020/9/30';
-- 結果を確認する
select * from Table_1;
code name finish_date
---------------------------
0001 りんご 2020/9/30
・引数を省略してストアドプロシージャを実行する
exec TestProcedure '0001';
-- 結果を確認する
select * from Table_1;
code name finish_date
---------------------------
0001 未設定 2099/12/31