考慮下面的存儲過程:有沒有辦法讓SQL Server存儲過程自動出錯?
CREATE PROCEDURE [dbo].[TestError]
@Input int
AS
BEGIN
DECLARE @Test int = 1/0;
INSERT TestTable (Number)
VALUES (@Input);
END
,把它:
EXEC TestError 123;
當我執行這個存儲過程中,TestTable
表依然被填充,儘管錯誤。
是否可以將存儲過程設置爲在出錯時自動退出,以便後續語句不會被執行?
看看使用try/catch。 –