从SQL连接返回输出参数

时间:2009-11-06 20:07:36

标签: c# sql sql-server parameters

这是可行的还是正确的方法(如果你没有使用存储过程):

conn.CommandText = "set @TotalPts = select SUM (pts) from cars where completedDate is not null and customerID = @customerID";
                conn.AddParam("@customerID", customerID);
                conn.AddOutputParam("@TotalPts", SqlDbType.Int);

                return (int)conn.OutputParamValue;

我想收回这笔钱,所以我可以用我的C#方法返回它。我不确定如何在字符串中设置输出参数。

3 个答案:

答案 0 :(得分:2)

您可以改为使用ExecuteScalar方法。

conn.CommandText = select SUM (pts) 
                    from cars 
                    where completedDate is not null 
                           and customerID = @customerID";

obj count=cmd.ExecuteScaler();

使用 Convert.ToInt32 功能将该计数转换为整数

答案 1 :(得分:0)

使用ExecuteScalar以及“选择来自其中completedDate不为null且customerID = @customerID”的汽车的SUM(pts)。

它会给你第一行/列中的内容,这就是你想要的。

答案 2 :(得分:0)

  

“我不确定如何在字符串中设置输出参数。”

select @TotalPts = SUM(pts) from ...