我已经执行了3个存储过程。但现在我想在一个程序中调用它们
过程Proc1
@PTID int
select A.AId from Table1 A where A.Id = @PID
PROC2
@PID int,
@AID int
Insert into Table2 (PID, AID) values (@PID, @AID)
PROC3
@AID int,
@PID int
Insert into Table3 (AID,WID,PID)
select AD,WID,@PID from Table1 where AID = @AID
现在调用所有这3个程序的程序
MAIN PROC
@PTID int;
@PID int;
Declare @aid int
set @aid=EXEC Proc1 @PID //I want to get a list of aid, but I get ERROR here saying Incorrect Syntax
exec Proc2 (@PID, @aid)
exec Proc3(@aid)
我的Proc1,Proc2和Proc3运行正常。但是我在Main Proc
中得到了错误。
如果我想在Main Proc
中调用所有这3个存储过程,我该如何实现?
更新:
Main Proc
中的错误:
关键字' EXEC'附近的语法不正确。
答案 0 :(得分:1)
尝试像这样更改proc3
。
Insert into Table3 (AID,WID,PID)
select AD,WID,@PID from Table1 where AID = @AID