srm*_*ark 7 sql t-sql stored-procedures sql-server-2005
如何忽略存储过程的输出参数?我从另一个程序调用该过程,例如:
DECLARE @param1 integer
EXEC mystoredprocedure
@in_param_1,
@in_param2_,
@param1 OUTPUT,
-- what do I type here to ignore the second output param??
Run Code Online (Sandbox Code Playgroud)
我正在使用T-SQL(MS SQL 2005).
你可以使用NULL作为最后一个参数,它应该可以正常工作 - 只要proc中的输入逻辑不需要该参数.
在你的情况下,你将proc称为
exec mystoredproc @in_param_1, @in_param2_, @param1 OUTPUT, null
Run Code Online (Sandbox Code Playgroud)
这是针对相同场景的另一个例子......
create proc MyTempProc
(@one int,
@two int out,
@three int out)
AS
begin
set @two = 2
set @three = 3
select @one as One
end
go
declare @p1 int,
@p2 int
set @p1 = 1
exec MyTempProc @p1, @p2 out, null
print @p1
print @p2
Run Code Online (Sandbox Code Playgroud)