Msg 201, Level 16, State 4, Procedure BogusOrder, Line 0
Procedure or function ‘%.*ls’ expects parameter ‘%.*ls’, which was not supplied.
This error message appears when you don’t supply a value for a parameter expected by a stored procedure.
The T-SQL statement can be parsed, but causes the error at runtime.
Error of the Severity Level 16 are generated by the user and can be fixed by the SQL Server user. You must supply values for each parameter in a stored procedure as long as there is not default value for that parameter defined. These supplied values must explicitly or implicitly be convertible to the parameter in question.
All versions of SQL Server
CREATE PROCEDURE dbo.BogusOrder
SET NOCOUNT ON
WHERE OrderID = @OrderID
DROP PROCEDURE dbo.BogusOrder
The above procedure expect the parameter @OrderID. Because there was no value supplied with the EXEC call, the error is raised.