数据库 
首页 > 数据库 > 浏览文章

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

(编辑:jimmy 日期: 2024/10/21 浏览:3 次 )

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

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

递归

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

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

上一篇:SQL Server中将数据导出为XML和Json方法分享
下一篇:SQL Server中将查询结果转换为Json格式脚本分享
友情链接:杰晶网络 DDR爱好者之家 南强小屋 黑松山资源网 白云城资源网 SiteMap