¿Cómo puedo salir en medio de un procedimiento almacenado?SQL Server 2000: ¿cómo salir de un procedimiento almacenado?
Tengo un procedimiento almacenado en el que quiero rescatar temprano (al intentar depurarlo). He intentado llamar RETURN
y RAISERROR
, y el SP se mantiene en marcha:
CREATE PROCEDURE dbo.Archive_Session @SessionGUID uniqueidentifier AS
print 'before raiserror'
raiserror('this is a raised error', 18, 1)
print 'before return'
return -1
print 'after return'
[snip]
Sé que sigue funcionando porque se produzca un error más abajo. No veo ninguna de mis impresiones. Si comento hacia fuera la mayor parte del procedimiento almacenado:
CREATE PROCEDURE dbo.Archive_Session @SessionGUID uniqueidentifier AS
print 'before raiserror'
raiserror('this is a raised error', 18, 1)
print 'before return'
return -1
print 'after return'
/*
[snip]
*/
entonces no conseguir mi error, y ver los resultados:
before raiserror
Server: Msg 50000, Level 18, State 1, Procedure Archive_Session, Line 5
this is a raised error
before return
Entonces la pregunta es: ¿cómo rescatar a de un procedimiento almacenado en SQL Server?
"Bienvenido al Hotel California ..." =) –
Guh? (Relleno para hacer que mi consulta "Guh?" tenga al menos 15 caracteres) –
Oh, espera, lo entiendo ... "nunca te puedes ir". –