Output w procedurze

Jedną z metod która pozwala zwrócić wartość z procedury jest użycie parametru OUTPUT.
Procedura zwraca aktualną wartość parametru do wywołującego programu.

use [AdventureWorks]
go

create or alter procedure TakeBirthDateByEmployeeID (   
    @EmployeeID int,
    @BirthDate varchar(10) output)
as    select @BirthDate  = 
(   
    select BirthDate
    from [HumanResources].[Employee]
    where BusinessEntityID = @EmployeeID
)
    return;    
go

declare @BirthDateOut varchar(10)

exec TakeBirthDateByEmployeeID @EmployeeID = 2, @BirthDate = @BirthDateOut output

select @BirthDateOut