首页 新闻 搜索 专区 学院

关于分页的问题

0
[已关闭问题]

为什么动软生成的代码,把分页代码给注销了呢,我放开后使用报错。我要分页该怎么做。用什么方法。

流浪蜗牛的主页 流浪蜗牛 | 初学一级 | 园豆:180
提问于:2010-08-11 11:38
< >
分享
其他回答(2)
0

动软的分页好像是依赖于一个通用的分页存储过程的.

你可以看下这篇文章:http://blog.csdn.net/zzh_haiz/archive/2010/01/18/5209865.aspx

是对动软分页源代码分析

kyo-yo | 园豆:5587 (大侠五级) | 2010-08-11 11:49
0

为什么不自己写分页。

Astar | 园豆:40805 (高人七级) | 2010-08-11 16:26
0

自己封装一个分页控制类,用一个相对通用的分页存储过程。

自己的分页好了。

邢少 | 园豆:10926 (专家六级) | 2010-08-11 17:46
我在数据库里写了一个过程如下: CREATE OR REPLACE procedure GX_RLGL.UP_GetRecordByPage (tblName varchar2, -- 表名 fldName varchar2, -- 主键字段名 PageSize int , -- 页尺寸 PageIndex int, -- 页码 IsReCount int , -- 返回记录总数, 非 0 值则返回 OrderType int , -- 设置排序类型, 非 0 值则降序 strWhere varchar2) -- 查询条件 (注意: 不要加 where) IS strSQL varchar(6000); -- 主语句 strTmp varchar(100) ; -- 临时变量(查询条件过长时可能会出错,可修改100为1000) strOrder varchar(400) ; -- 排序类型 begin if OrderType <> 0 then --strTmp := '<(select min'; strOrder := ' order by '||fldName||' desc'; else --strTmp := '>(select max'; strOrder := ' order by ' ||fldName ||' asc'; end if; if strWhere <> '' then strSQL := ' select * from (select tblTmp.*, ROWNUM num FROM ((SELECT * FROM '|| tblName||'where'||strWhere||strOrder||') tblTmp ) WHERE ROWNUM <='||(PageSize*PageIndex)||') WHERE num>'||(PageSize*PageIndex-PageSize)||'and'||strWhere; else strSQL := ' select * from (select tblTmp.*, ROWNUM num FROM ((SELECT * FROM '|| tblName||') tblTmp ) WHERE ROWNUM <='||(PageSize*PageIndex)||') WHERE num>'||(PageSize*PageIndex-PageSize); --strSQL := ' select * from (select tblTmp.*, ROWNUM num FROM ((SELECT * FROM '|| tblName||'where'||strWhere||strOrder||') tblTmp ) WHERE ROWNUM <='||(PageSize*PageIndex)||') WHERE num>'||(PageSize*PageIndex-PageSize)||'and'||strWhere; end if; if PageIndex = 1 then strTmp :=' where'; if strWhere != '' then strTmp := strTmp|| strWhere; end if; strSQL := 'select * from ' || tblName || strTmp||' ROWNUM <='||PageSize|| strOrder; end if; if IsReCount <> 0 then strSQL := 'select count(*) as Total from ' || tblName ||' where ' || strWhere; end if; execute immediate (strSQL); end; / *************** Oracle 数据库,但在执行的时候报错: DataSe
支持(0) 反对(0) 流浪蜗牛 | 园豆:180 (初学一级) | 2010-08-12 09:08
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册