mysql c#分页通过存储过程和out参数同时获得总数和表

       return SQLHelper.ExecuteReaderAndCount(SQLHelper.ConnectioinString, CommandType.StoredProcedure, "call GetMediaInfoNewNoApprove(?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,@count)", out count,getMediaByRd, par);

 

/// <summary>         /// 带总数量的查询         /// </summary>         /// <param name="connectionString"></param>         /// <param name="cmdType"></param>         /// <param name="cmdText"></param>         /// <param name="commandParameters"></param>         /// <returns></returns>         public static DataTable ExecuteReaderAndCount(string connectionString, CommandType cmdType, string cmdText, out int count,gettablebyRd gettable, params OdbcParameter[] commandParameters)         {             OdbcCommand cmd = new OdbcCommand();             OdbcConnection conn = new OdbcConnection(connectionString);

            // we use a try/catch here because if the method throws an exception we want to             // close the connection throw code, because no datareader will exist, hence the             // commandBehaviour.CloseConnection will not work             try             {                 count = 0;                 PrepareCommand(cmd, conn, null, cmdType, cmdText, commandParameters);

                OdbcParameter _p = new OdbcParameter("@count",OdbcType.Int);                     _p.Direction = ParameterDirection.Output;                     cmd.Parameters.Add(_p);                 OdbcDataReader rdr = cmd.ExecuteReader();                 DataTable dt= gettable(rdr);                 cmd.CommandText = "select @count";                 count = int.Parse(cmd.ExecuteScalar().ToString());                 cmd.Parameters.Clear();                 return dt;             }             catch             {                 count = 0;                 conn.Close();                 throw;             }

        }

 

转载于:https://www.cnblogs.com/starlights/p/3596150.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值