oracle分页查询问题

            //OracleParameter[] parameters = {
            //        new OracleParameter("tblName", OracleType.VarChar, 255),
            //        new OracleParameter("PageSize", OracleType.Number),
            //        new OracleParameter("PageIndex", OracleType.Number),
            //        new OracleParameter("IsReCount", OracleType.Number),
            //        new OracleParameter("strWhere", OracleType.VarChar,1000),
            //        new OracleParameter("strColums", OracleType.VarChar,1000),
            //        new OracleParameter("v_cur", OracleType.Cursor),
            //        };
            //parameters[0].Value = "BS_ROLE_VIEW";
            //parameters[1].Value = PageSize;
            //parameters[2].Value = PageIndex;
            //parameters[3].Direction = ParameterDirection.Output;
            //parameters[4].Value = strWhere;
            //parameters[5].Value = " ID,NAME,ROLE_DESC,SYSTEMID,DEPTID,SYSIDS,ISOPENREG,ISSYSROLE,SORTID,SYSTEMNAME";
            //parameters[6].Direction = ParameterDirection.Output;
            //DataSet ds = DbHelperOra.RunProcedure("P_PAGE2.UP_GetRecordByPage", parameters, "ds");
            //pageCount = parameters[3].Value.ToString();
            //return ds;
//注释部分带条件查询有问题
            StringBuilder strSql = new StringBuilder();
            strSql.Append(" select ROWNUM RN,A.* from ");
            strSql.Append(" (select * from BS_ROLE_VIEW  ");
            StringBuilder StrReturnCount = new StringBuilder();
            StrReturnCount.AppendFormat(" select count(*) from BS_ROLE_VIEW ");
            if (!string.IsNullOrEmpty(strWhere))
            {
                strSql.AppendFormat(" where {0} ", strWhere);
                StrReturnCount.AppendFormat(" where {0} ", strWhere);
            }
            strSql.AppendFormat(" ) A where ROWNUM between {0} and {1} ", startIndex, endIndex);


            DataTable dt = DbHelperOra.Query(StrReturnCount.ToString()).Tables[0];
            pageCount = dt.Rows[0][0].ToString();
            return DbHelperOra.Query(strSql.ToString());
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值