遞歸式指代碼片段調用自身的情況;危險之處在於:如果調用了自身一次,那麼如何防止他反復地調用自身。也就是說提供遞歸檢驗來保證適當的時候可以跳出。
以階層為例子說存儲過程中遞歸的調用。
遞歸
CREATE PROC [dbo].[usp_spFactorial]
@InputValue INT,
@OuputValue INT OUTPUT
AS
BEGIN
DECLARE @InValue INT;
DECLARE @OutValue INT;
IF(@InputValue!=1)
BEGIN
SET @InValue = @InputValue - 1;
EXEC spFactorial @InValue,@OutValue OUTPUT;
SELECT @OuputValue = @InputValue * @OutValue;
END
ELSE
BEGIN
SET @OuputValue = 1;
END
END
當創建此存儲過程時候,會遇見一條報告信息