こんにちは、ストアド プロシージャで出力パラメータを定義しています。sp は次のとおりです。
createproc [dbo].[convertempID](@empid int,@totcnt varchar(4) output)
as
begin
select @totcnt = right('00000'+convert(varchar(6), empID), 4)
from tblEmployee
where empID = @empid;
end
これを実行すると結果が得られます0015
が@totcnt
、C#コードでこれを呼び出すと、どこが間違っているかを誰かが知る15
代わりに得られます0015
cmd.CommandText = "convertempID";
cmd.CommandType = CommandType.StoredProcedure;
cmd.Parameters.AddWithValue("@empid", 15);
cmd.Parameters.Add(new SqlParameter("@totcnt", SqlDbType.Int));
cmd.Parameters["@totcnt"].Direction = ParameterDirection.Output;
cmd.ExecuteNonQuery();
sring ans = cmd.Parameters["@totcnt"].Value.ToString();