Click here to Skip to main content
15,892,746 members
Please Sign up or sign in to vote.
0.00/5 (No votes)
See more:
Hello developers,
I have a stored procedure that has output parameter and i was wondering if their is a better way to store the returned values in a variable because i need to assign them to an object. the procedure also takes in two parameters and returns 3 values.

can i have a method that takes in 2 arguments and returns me the values

ALTER PROCEDURE [dbo].[GetPurchaseUnitINDefaultUnit]
-- Add the parameters for the stored procedure here
@quantity as decimal(20,4),
@PurchaseUnitID as int,
@TranslatedQuantity as decimal(20,4) output,
@DefaultUnitID as int output,
@DefaultUnitDesc as varchar(50) output

thanks
Posted

If you use a SELECT statement inside the stored procedure, the result is returned to the calling program. This way the result is handled as a result set, not as output parameters.

For example have a look at http://www.sqlteam.com/article/stored-procedures-returning-data[^]
 
Share this answer
 
If you are returning more than one value, then you have three options only:
1) Use out parameters as you are doing.
2) Return values via a SELECT statement.
or
3) Convert your values to VARCHAR and concatenate them together.

I wouldn't use the last one.
 
Share this answer
 

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)



CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900