我有一个接受10个参数的存储过程。我想在执行另一个存储过程时发送一些这些参数。我怎么能这样做?
存储过程定义:
create PROCEDURE [dbo].[SP_name]
@p1 int = null,
@p2 int = null
..
..
@p10 int = null
执行声明:
exec SP_name valueForP2,vlaueForP5..;
有没有什么可以告诉exec语句只采取一些变量?
答案 0 :(得分:2)
您可以在对过程的调用中指定参数名称,其他参数将使用默认值。
create PROCEDURE [dbo].[SP_name]
@p1 int = null,
@p2 int = NULL,
@p10 int = NULL
AS
SELECT @p1, @p2, @p10
GO
-- Execute using named parameters
EXEC [SP_name] @p1 = 1, @p10 = 5;