首页 > 数据库 > SQL Server > 正文

sqlserver中存储过程的递归调用示例

2020-07-25 12:53:28
字体:
来源:转载
供稿:网友

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

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

递归

CREATE PROC [dbo].[usp_spFactorial]@InputValue INT,@OuputValue INT OUTPUTASBEGIN   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;      ENDEND

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

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表