Home >> FAQs/Tutorials >> SQL Server FAQ

SQL Server FAQ - OUTPUT - Defining Output Parameters in Stored Procedures

By: FYIcenter.com

(Continued from previous topic...)

How To Define Output Parameters in Stored Procedures?

Sometime a stored procedure not only want to take input values from the calling statement batch, but it also want to send output values back to the calling statement batch. This can be done by defining output parameters in the CREATE PROCEDURE statement.

To define an output parameter, you should use this format: "@parameter_name data_type OUTPUT", as shown in the following tutorial exercise:

DROP PROCEDURE diff_in_days;

-- Defining an output parameter
CREATE PROCEDURE diff_in_days 
   @start_date DATETIME,
   @end_date DATETIME = '19-May-2007',
   @days VARCHAR(40) OUTPUT
   SET @days = CONVERT(VARCHAR(20),@end_date,107)
      + ' - ' 
      + CONVERT(VARCHAR(20),@start_date,107)
      + ' = ' 
      + STR(DATEDIFF(DAY, @start_date, @end_date));
Command(s) completed successfully.

EXEC diff_in_days
Msg 201, Level 16, State 4, Procedure diff_in_days, Line 0
Procedure or Function 'diff_in_days' expects 
parameter '@days', which was not supplied.

(Continued on next topic...)

  1. What Are Stored Procedures?
  2. How To Create a Simple Stored Procedure?
  3. How To Execute a Stored Procedure?
  4. How To List All Stored Procedures in the Current Database?
  5. How To Drop an Existing Stored Procedure?
  6. How To Create a Stored Procedure with a Statement Block?
  7. How To End a Stored Procedure Properly?
  8. How To Generate CREATE PROCEDURE Script on an Existing Stored Procedure?
  9. How To Get the Definition of a Stored Procedure Back?
  10. How To Modify an Existing Stored Procedure?
  11. How To Create Stored Procedures with Parameters?
  12. How To Provide Values to Stored Procedure Parameters?
  13. What Are the Advantages of Passing Name-Value Pairs as Parameters?
  14. Can You Pass Expressions to Stored Procedure Parameters?
  15. How To Provide Default Values to Stored Procedure Parameters?
  16. How To Define Output Parameters in Stored Procedures?
  17. How To Receive Output Values from Stored Procedures?
  18. How To Create a Local Temporary Stored Procedure?
  19. Can Another User Execute Your Local Temporary Stored Procedures?

Related Articles:


Other Tutorials/FAQs:


Related Resources:


Selected Jobs: