Когда вы используете выходной параметр vs возвращаемую переменную или наоборот? В следующем простом примере я могу добиться того же, используя один из них.
Использование выходного параметра
create proc dbo.TestOutput (@InValue int, @OutValue int output)
as
set @OutValue = @InValue
declare @x int
exec TestOutput @InValue = 3, @OutValue = @x output
select @x
Использование возвращаемой переменной:
create proc dbo.TestReturn (@InValue int)
as
return @InValue
declare @x int
exec @x = TestReturn @InValue = 3
select @x
Как вы можете видеть, они оба делают то же самое. Может ли кто-нибудь показать мне пример, где выбор выходного параметра vs возвращаемой переменной будет иметь значение?