Detectar @@error luego de llamada a SP

11/02/2005 - 04:55 por Alonso | Informe spam
Hola a todos.

Si dentro de un SP yo tengo una llamada a otro SP, por ejemplo:


EXEC a_subSP with @para1

Y ocurre algun error interno en alguna sentencia del a_subSP, yo puedo
preguntar por @@error aqui ?


EXEC a_subSP with @para1
IF @@ERROR <> 0 RETURN 99

O ya no esta disponible a este nivel ?


Gracias

Alonso
 

Leer las respuestas

#1 Eladio Rincón
11/02/2005 - 09:30 | Informe spam
Hola,

el error está disponible sólo inmediatamente después de suceder:

declare @e1 int, @e2 int
select 1/0
set @e1 = @@error
set @e2 = @@error
select @e1, @e2

fijate que sólo se rellena @e1

podrías codificar algo como esto:

create proc tu_proc
@error int OUT
AS
...
set @error = @@error
if @error <>0
return @error

en 2005 tendremos TRY ... CATCH al estilo .NET que ayudarán a gestionar
mejor los errores...

Si necesitas algo más de ayuda publica el procedimiento y miramos a ver ...

Eladio Rincón
SQL Server MVP

Solid Quality Learning (http://www.solidqualitylearning.com)
"Comparte lo que sabes, aprende lo que no sepas", FGG

Consulte el histórico del grupo en Google
http://groups.google.com/groups?gro....sqlserver

¿Te interesa participar en las reuniones
del grupo de Usuarios de SQL-Server y .NET
Se harán en levante de España, (Alicante o Murcia)?

"Alonso" wrote in message
news:O6j860#
Hola a todos.

Si dentro de un SP yo tengo una llamada a otro SP, por ejemplo:


EXEC a_subSP with @para1

Y ocurre algun error interno en alguna sentencia del a_subSP, yo puedo
preguntar por @@error aqui ?


EXEC a_subSP with @para1
IF @@ERROR <> 0 RETURN 99

O ya no esta disponible a este nivel ?


Gracias

Alonso


Preguntas similares