Mo da este error al ejecutar un procedimiento almacenado (que es un cursor)
He intentado buscar documentación sobre este error pero encontré poca cosa
Me podriais decir mas o menos por donde tirar?
Gracias
| ||||
Respuesta: "Se superó el nivel máximo de anidamiento de vistas......" posiblemente tengas un procedimiento recursivo.. puedes postear algo de tu code, estoy seguro que te ayudaran a realizar los ajustes necesarios.. ![]()
__________________ La sencillez y naturalidad son el supremo y último fin de la cultura... -- MCTS : SQL Server 2008, .NET Framework 3.5, ASP.NET Applications. |
| ||||
Respuesta: "Se superó el nivel máximo de anidamiento de vistas......"
Código:
ALTER PROCEDURE [dbo].[usp_Reparar_temporales] -- Add the parameters for the stored procedure here AS BEGIN -- SET NOCOUNT ON added to prevent extra result sets from -- interfering with SELECT statements. SET NOCOUNT ON; -- Insert statements for procedure here DECLARE @T varchar(255),@C varchar(255) ,@ss varchar(255), @control integer set @control=0 --print N'Illegal value : '+@control DECLARE Table_Cursor CURSOR FOR SELECT a.name,b.name FROM sysobjects a,syscolumns b WHERE a.id=b.id AND a.xtype='u' AND (a.name like '''temp_%''') OPEN Table_Cursor FETCH NEXT FROM Table_Cursor INTO @T,@C WHILE(@@FETCH_STATUS=0) BEGIN set @control=@control+1 EXEC('UPDATE '+@T+' SET '+@C+'=LTRIM(RTRIM(REPLACE('+@C+',''|'' ,'''')))') -- EXEC('UPDATE temp_Consumo_descrip SET Descripcion=LTRIM(RTRIM(REPLACE(temp_Consumo_descrip.Descripcion,''Local/Tokikoa |'' ,''Lacal'')))') FETCH NEXT FROM Table_Cursor INTO @T,@C END CLOSE Table_Cursor DEALLOCATE Table_Cursor END exec usp_Reparar_temporales |
| ||||
Respuesta: "Se superó el nivel máximo de anidamiento de vistas......" Lo único que yo veo raro es: 1. @control integer. Cambialo por int 2. a.name like '''temp_%'''. No tienes apostrofes demás?
__________________ No repitamos temas, usemos el Motor de busquedas Plantea bien tu problema: Ayúdanos a ayudarte. |