日期:2014-05-18  浏览次数:20855 次

有没有办法更改SqlServer的最大嵌套层数
我写了个递归的存储过程,但是运行后发现出现下面的错误:
消息 217,级别 16,状态 1,过程 sp_create_jobset_tree,第 49 行
超出了存储过程、函数、触发器或视图的最大嵌套层数(最大层数为 32)。

经发现递归中无死循环,的确是数据量过大导致嵌套层数超出32导致的,有没有办法去设置SqlServer的最大嵌套层数?

------解决方案--------------------
OPTION(MAXRECURSION 0) --当指定MAXRECURSION为0时,递归层次无限制,100为系统的默认值

------解决方案--------------------
看递归方法,SQL2005可无限层,默认为100层

如果是函数、触发器、存储过程。。是32层