您的位置:首页 > 编程语言 > Go语言

存储过程输出参数

2007-06-23 13:36 232 查看
代码调用方法:
 SqlDatabase db = new SqlDatabase();
        db.DbConn.Open();
        db.DbCmd.CommandType = CommandType.StoredProcedure;
        db.DbCmd.CommandText = "eip_ReportMt1";
          db.DbCmd.Parameters.AddWithValue("@userId","1");
          db.DbCmd.Parameters.AddWithValue("@Countstart",Convert.ToDateTime(txt1.Text));
          db.DbCmd.Parameters.AddWithValue("@CountEnd", Convert.ToDateTime(txt2.Text));
          SqlParameter sqlParam = new SqlParameter("@MtReportUser", SqlDbType.BigInt, 12);
          sqlParam.Direction = ParameterDirection.Output;
          db.DbCmd.Parameters.Add(sqlParam);     
          db.DbCmd.ExecuteNonQuery();
          string a = sqlParam.Value.ToString();
        txt3.Text = a.ToString();
        db.DbConn.Close();
存储过程:
--前台个人报表按时间统计(查询某人某段时间的Mt数据)
CREATE PROCEDURE eip_ReportMt(--查询某人某段时间的Mt数据
    @userId bigint,            --输入:用户帐号
    @Countstart datetime,        --输入:开始时间
        @CountEnd datetime,              --输入:结束时间
        @MtReportUser bigint OUTPUT
)
AS
declare @start bigint
DECLARE @end bigint

select @start=datediff(hh,'2007 - 07- 01 00:00:00',@Countstart)
select @end=datediff(hh,'2007 - 07- 01 00:00:00',@CountEnd)

BEGIN
     
select @MtReportUser=sum(MtSucceedNum) from eip_reportNote
where reportowner=@userId and StatTime<=@end and StatTime>=@start
END
return @MtReportUser
GO
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  存储 output string 报表 go
相关文章推荐