Объркването е оправдано до известна степен - и други RDBMS като Oracle имат параметри на съхранена процедура, които могат да бъдат от тип IN
(само вход), OUT
(само изход) или INOUT
(и в двете посоки - тип параметър "предаване по референция").
SQL Server е малко небрежен тук, тъй като обозначава параметъра като OUTPUT
, но всъщност това означава INPUT
/OUTPUT
- по същество просто означава, че съхранената процедура има шанс да върне стойност от извикването си в този параметър.
Така че да - въпреки че се нарича OUTPUT
параметър, това наистина е по-скоро INPUT
/OUTPUT
параметър и тези IN
, INOUT
, OUTPUT
като в Oracle не съществуват в SQL Server (в T-SQL).