>>>1. Remove RETURN statement from your SP. Stored procedure in T-SQL can only return an integer value (usually error code if non 0)
>>
>>I tried that, but it didn't make a difference.
>>
>
>Right, it will just correct the SP. SP can only return integer value. Anything else is simply ignored.
>
>
>>>
>>>You also need to set up parameter's direction - Output (which I see you're doing). Also, why instead of using SQLParameter you're using IDbDataParameter ?
>>>
>>
>>I do not know what all this means, I am just following an example from the help file for Mere Mortals.
>>
>>>Also, what does out cmd means?
>>>Is there any specific reason for this or this is in TMM examples?
>>>
>>>Also, this line IDbDataParameter param = (IDbDataParameter)cmd.Parameters["@newNumber"]; is wrong and should not be here.
>>>
>>>You should get your value using param1 which you declared above. param1 holds the parameter's value. Also, instead of ExecuteScalar you need to use ExecuteNonQuery in your case.
>>
>>This was copied straight from the help file. Here's the example:
>>
>>
public void TestOutputParams()
>>{
>> // Create the parameter and set the direction
>> IDbDataParameter param1 = this.CreateParameter("@result", 0);
>> param1.Direction = ParameterDirection.Output;
>>
>> // Call the stored procedure and pass the parameter
>> IDbCommand cmd;
>> this.ExecSprocScalar("OutputParamTest", out cmd, param1);
>>
>> // Retrieve the value from the command object
>> IDbDataParameter param = (IDbDataParameter)cmd.Parameters["@result"];
>> int x = (int)param.Value;
>>}
>
>It looks to me as a bug in the Help file (incorrect Help). Search for a better example (and preferably using SQLParameter in the Help). That particular piece of code is wrong - (at least last 2 lines seem wrong to me - you already declared parameter - just get it).
>
>So, if you want to use that particular sample - comment out the extra declaration and use param1 instead of param at the end.
Thanks,
I've tried that and it didn't make a difference, I still just get 0 as the parameter value.