System.Data.SqlClient.SqlException: 超出了存储过程、函数、触发器或视图的最大嵌套层数(最大层数为32)。 首先看看嵌套的定义: 如: 嵌套1层 select*from (select*fromSTUDENT )asA 嵌套2层 select*from (select*from (select*fromSTUDENT )asA )asB 常犯的错误: 1.触发器中嵌套调用 CREATETRIGGERMoniStudentIn...
System.Data.SqlClient.SqlException: 超出了存储过程、函数、触发器或视图的最大嵌套层数(最大层数为32)。 首先看看嵌套的定义: 如: 嵌套1层 select*from (select*fromSTUDENT )asA 嵌套2层 select*from (select*from (select*fromSTUDENT )asA )asB 常犯的错误: 1.触发器中嵌套调用 CREATETRIGGERMoniStudentIn...
消息217,级别 16,状态 1,服务器 GMJ-PC\SQLEXPRESS,过程 AfterDeleteTest,第 13 行超出了存储过程、函数、触发器或视图的最大嵌套层数(最大层数为 32)。 wangzhiqing999 c#大师 15 解决的办法1> drop TRIGGER AfterDeleteTest;2> go1> CREATE TRIGGER AfterDeleteTest2> ON test_trigger_table3> FOR ...
应该是多个触发器相互影响造成的,你看看关于Zc_InStock的触发器有没有操作Zc_Goods
如果满足某些条件, 你就要去 update T_Archive_Location 表。你需要去看看 T_Archive_Location 表上面有没有什么别的触发器。因为你这个错误, 一般情况下, 是 A 表更新触发器, 更新 B 表。B 表更新触发器, 更新 A 表。最后导致 来回折腾 32次以后, 出错结束了。
你这应该是在创建存储过程时将测试此存储过程的代码也被编译到存储过程里,因此造成了循环调用,因此会超出嵌套层数 比如 CREATE procedure [dbo].[PR_Test]as begin end exec PR_Test 这样就会出错
我的触发器: ALTER TRIGGER [Trig_Update] ON [dbo].[Zc_Goods] for updateASdeclare @goodsname nvarchar(50),@goodstype nvarchar(50),@goodsunit nvarchar(50),@goodsnum nvarchar(50),@remark nvarchar(50) select @goodsname=[GoodsName],@goodstype=[GoodsType],@goodsunit=[GoodsUnit],@goodsnum=...
System.Data.SqlClient.SqlException: 超出了存储过程、函数、触发器或视图的最大嵌套层数(最大层数为32)。 首先看看嵌套的定义: 如: 嵌套1层 select*from (select*fromSTUDENT )asA 嵌套2层 select*from (select*from (select*fromSTUDENT )asA )asB ...
超出了存储过程、函数、触发器或视图的最大嵌套层数(最大层数为 32). 这个是存储过程写完后,在最后没有添加GO -- 示例: createproc xxx as begin select'123'; end -- 在后面添加 go -- 再写执行过程 execxxx;
NotpassNum int OUTPUT AS BEGIN Select @AvgScore = Avg(Score) From SC Where SC.snum = @snum Select @CourseNum = Count(*) From SC Where SC.snum = @snum Select @NotpassNum = Count(*) From SC Where SC.snum = @snum and score<60 END Go DECLARE @_temp varchar(4)DE...