sql >> Base de Datos >  >> RDS >> Sqlserver

Devolver un valor de un procedimiento almacenado

Necesitarías RETURN para hacerlo a tu manera
Sin embargo, esto no es lo ideal:debe reservarse para el estado.

Usaría un parámetro de SALIDA

CREATE PROC ... 
    @PropertyID int OUTPUT
AS
...

select @PropertyID = SCOPE_IDENTITY() as 'MemberPropertyID'; (if it is a new property)
...
select @PropertyID = MemberPropertyID as 'MemberPropertyID'; (if it is an existing property)
from blah blah blah
...
GO

EXEC [import].[spInsertIntoTblMemberProperties] @PropertyID OUTPUT

Ejemplo de diferencias en la técnica:set @var =exec storedprocedure