SQL 2008存储过程的问题

zjh222 2009-05-19 10:34:24
/// ALTER proc [dbo].[getInbillMoney]
/// @no nvarchar(200)
/// --@temp nvarchar(200) output
/// as
/// declare @m numeric(12,4)
/// SET @m=(select SUM(costMoney) from InBill where inbillNO=@no)
/// return @m;
/// </summary>
/// <returns> </returns>
string getInbillMoney(string bill)
{
SqlConnection cn = LinkDB.LinkDBSqlconnection();
SqlCommand cmd = new SqlCommand("getInbillMoney",cn);
cmd.CommandType = CommandType.StoredProcedure;
cmd.Parameters.Add("@no", SqlDbType.NVarChar).Value = bill;

SqlParameter a = cmd.Parameters.Add("@return_value",
SqlDbType.NVarChar);
a.Direction = ParameterDirection.ReturnValue;
cmd.ExecuteNonQuery();
string re = (string)(cmd.Parameters["@return_value"].Value.ToString());
return re;
}
上面的存储过程,用C#调用时怎么没有小数位呀(表中是有小数位的)
...全文
79 3 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
zjh222 2009-05-19
  • 打赏
  • 举报
回复
补充:
CostMoney是计算列即:incost*inqty
zjh222 2009-05-19
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 tianyucimen 的回复:]
SqlParameter a = cmd.Parameters.Add("@return_value",
SqlDbType.NVarChar); 改为SqlParameter a = cmd.Parameters.Add("@return_value",
SqlDbType.numeric);看看怎么样的
[/Quote]

还是不行呢?
霜与寒雪 2009-05-19
  • 打赏
  • 举报
回复
SqlParameter a = cmd.Parameters.Add("@return_value",
SqlDbType.NVarChar); 改为SqlParameter a = cmd.Parameters.Add("@return_value",
SqlDbType.numeric);看看怎么样的

22,300

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 疑难问题
社区管理员
  • 疑难问题社区
  • 尘觉
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧