Cannot use the OUTPUT option when passing a constant to a stored procedure.

Error Message:
Msg 179, Level 15, State 1, Line 3
Cannot use the OUTPUT option when passing a constant to a stored procedure.

Severity level:
15.

Description:
This error message appears when you try to execute a stored procedure with an OUTPUT parameter, but pass a constant to that parameter.

Consequences:
The SQL statement cannot be parsed and further execution is stopped.

Resolution:
Errors of the Severity Level 15 are generated by the user and can be fixed by the SQL Server user. The statement cannot be executed this way. You cannot pass a constant to a procedure for a parameter marked as OUTPUT parameter.

Versions:
All versions of SQL Server.

Example(s):
CREATE PROCEDURE dbo.uspT (@p1 int OUTPUT)
AS
SELECT @p1
GO
DECLARE @p1 int;

EXEC dbo.uspT 1 OUTPUT;
DROP PROCEDURE dbo.uspT;

Remarks:
In the above example we try to call the stored procedure dbo.uspT, for which the first parameter is marked as OUTPUT parameter. In the call however the constant 1 is passed. This raises the error.

]]>

Leave a comment

Your email address will not be published.