如何在SQL Server中按Order执行存储过程

时间:2017-06-05 11:35:54

标签: sql-server sql-server-2008

我创建了一个调用其他存储过程的存储过程,但我不想同时执行它们。存储过程#1执行需要时间,因此当它完成存储过程时#2将开始执行。

我该怎么做?

EXEC SP1;
--wait for SP1 to finish its job
EXEC SP2;

有什么建议吗?

2 个答案:

答案 0 :(得分:0)

应该像

一样简单
EXEC SP1;
GO
EXEC SP2;
GO

答案 1 :(得分:0)

尝试使用以下内容:

BEGIN TRY
BEGIN TRANSACTION
exec( @sp1)
exec(@sp2)
exec(@sp3)
COMMIT
END TRY
BEGIN CATCH
IF @@TRANCOUNT > 0 (Validate it )
ROLLBACK (rollback to sp where you want to )
END CATCH