Yo utilizo el Return @Resultado y funciona sin problemas
Hago esto desde el un SP que llama a otro
Declare @Error Int
Execute @Error = USP_Algo
If @Error = 0
Saludos
PabloC
De: [email protected] [mailto:[email protected]] En nombre de Alejandro Paciotti
Iacchelli
Enviado el: Lunes, 23 de Mayo de 2011 16:13
Para: GUFA List Member
Asunto: [GUFA] OFF TOPIC TRANSACT SQL
Estimados:
Estoy haciendo un procedimiento almacenado en SQL SERVER tal que borre un
registro si se da cierta condición, ¿ cómo puedo hacer para que devuelva -1
sino se pudo borrar ?
Paso el código:
ALTER PROCEDURE [dbo].[SP_BAJA_NODOS]
@CodigoNodo VARCHAR(15)
AS
BEGIN
SET NOCOUNT ON;
DECLARE @Resultado INT
SET @Resultado = -1
SET @Resultado = (SELECT COUNT(CodigoNodo) FROM Nodos WHERE
CodigoPadre = @CodigoNodo)
IF @Resultado = 0
BEGIN
DELETE FROM Nodos WHERE CodigoNodo = @CodigoNodo
END
ELSE
-- SELECT -1 Esto ya lo probé y no anda.
-- RETURN -1 Esto tampoco.
END