SQL Server 异常解决:语句被终止。完成执行语句前已用完最大递归 100。

在处理缺料分析报表时,遇到SQL Server异常:语句被终止,因达到最大递归100。经排查,问题源于递归查询语句形成死循环。通过注释代码定位到适用机种的程序,发现物料递归引用导致。采用try catch隔离运行,找出错误物料并删除,成功解决问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

问题出现业务场景:

  我司有个缺料分析报表,有一个字段是适用机种,需要通过BOM递归读取顶层父物料。这个错就是缺料分析报表执行时报的错;

原因分析定位:

  通过网上一些资料,猜测应该是某个递归查询语句,遇到死循环了。所以看了一遍整个存储过程大体猜测应该是适用机种的程序出错。单独注释这个程序,整个报表立马运行正常。

  接着继续看代码,果然有一段递归查询语句:

1  with cte(cnumber,cname,pnumber,fname) as
2  (
3   select cnumber,cname,pnumber,fname from #bompc
4   where cnumber=@fnumber
5   union 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值