现在的位置: 首页 > 综合 > 正文

存储过程中递归调用

2012年02月19日 ⁄ 综合 ⁄ 共 417字 ⁄ 字号 评论关闭

递归式指代码片段调用自身的情况;危险之处在于:如果调用了自身一次,那么如何防止他反复地调用自身。也就是说提供递归检验来保证适当的时候可以跳出。

以阶层为例子说存储过程中递归的调用。

递归

 1 CREATE PROC  [dbo].[usp_spFactorial]
2 @InputValue INT,
3 @OuputValue INT OUTPUT
4 AS
5 BEGIN
6 DECLARE @InValue INT;
7 DECLARE @OutValue INT;
8 IF(@InputValue!=1)
9 BEGIN
10 SET @InValue = @InputValue - 1;
11 EXEC spFactorial @InValue,@OutValue OUTPUT;
12 SELECT @OuputValue = @InputValue * @OutValue;
13 END
14 ELSE
15 BEGIN
16 SET @OuputValue = 1;
17 END
18 END

 

当创建此存储过程时候,会遇见一条报告信息

抱歉!评论已关闭.