34,593
社区成员
发帖
与我相关
我的任务
分享
CREATE PROCEDURE mycs
@abc int,
@ret int output
AS
BEGIN
if @abc>10
begin
@ret=0
end
else
begin
@ret=1
end
END
CREATE PROCEDURE mycsa
@abc int output
AS
BEGIN
declare @val int
exec mycs @abc,@val
set @abc = case @val when 0 then 300 else 3000 end
END
CREATE PROCEDURE mycs
@abc int
AS
BEGIN
if @abc>10
RETURN 0
else
RETURN 1
END
go
CREATE PROCEDURE mycsa
@abc int output
AS
BEGIN
-- 调用mycs过程,如果此过程返回0则set @abc=300,否则set @abc=3000。
declare @val int
exec @val = mycs @abc
set @abc = case @val when 0 then 300 else 3000 end
select @abc
END
go
exec mycsa 1
/*
-----------
3000
(1 行受影响)
*/
exec mycsa 100
/*
-----------
300
(1 行受影响)
*/
go
drop procedure mycs,mycsa
CREATE PROCEDURE mycsa
@abc int output
AS
BEGIN
declare @val int
-- 调用mycs过程,如果此过程返回0则set @abc=300,否则set @abc=3000。
exec @val = mycs @abc
set @abc = case @val when 0 then 300 else 3000 end
END