Nie zadeklarowałeś parametru, ale zmienną lokalną. Aby zadeklarować to tak, jak chciałeś:
CREATE PROCEDURE pOrders (@enteredClientID varchar(20))
AS
DECLARE @Results table (ClientID varchar(20), Num_orders int);
SET NOCOUNT ON;
-- Get all the order from the client
INSERT INTO @Results
SELECT ClientID, sum(Num_orders)
FROM Orders O
WHERE O.ClientID = @enteredClientID
GROUP BY O.ClientID);
-- Insert the orders into the results table --
SELECT *
FROM @Results;
GO;
A tak to nazwać:
exec pOrders @enteredClientID = 'ABC123456789'
lub po prostu
exec pOrders 'ABC123456789'