简单例子
create procedure sp_b
as
select * from 表1
gocreate procedure sp_a
as
insert into 表2
exec sp_b --->调用一个sp返回一个数据集合,然后插入
go
create procedure sp_b
as
select * from 表1
gocreate procedure sp_a
as
insert into 表2
exec sp_b --->调用一个sp返回一个数据集合,然后插入
go
as
.......
gocreate procedure spnameb
as
......
exec spnameA
go
把@test作为output参数或者存储过程返回值CREATE PROCEDURE sp_test
(
@Y_A_A_Nums int=0 output,
@Test int output
)
AS
DECLARE @Sql nvarchar(1000
SET @Sql ='SELECT @Y_A_A_Nums=Y_A_A FROM Init_Week WHERE Member_Code=''QCRX1381'' AND StartDay=''2005-7-31'' AND EndDay=''2005-8-6'''
EXEC sp_executesql @Sql,N'@Y_A_A_Nums int out',@Y_A_A_Nums out
IF @Y_A_A_Nums IS NULL
SET @Y_A_A_Nums=0
SET @Test = 1
go然后在另一个过程中:
create procedure p
as
declare @nums int,@test int
exec sp_test @nums out,@test out
select @nums,@test
(
@a varchar(10),
@b varchar(10) output
)
AS
......
create procedure sp2
asdeclare @c varchar(10),
@d varchar(10)
select @c ='aaa'
exec sp1 @c,@d output
.....