DataAccess:ExecuteDataPaging().Detail Info:sqlText = SELECT * FROM MASMCR DataAccess::ExecuteScalar().Detail Info:sqlText = SELECT COUNT(1) FROM (SELECT * FROM MASMCR ) )DataAccess::ExecuteDatatable().Detail Info:sqlText = SELECT * FROM ( SELECT A.*,ROWNUM R FROM (SELECT * FROM MASMCR )A WHERE ROWNUM<=20)B WHERE R>=11这是一个分页的流程,取得所有的数据一共多少条,然后看你页面上能显示多少条就根据这个分页
分页主要是根据ROWNUM分页吧,用不到存储过程吧
你发的是Access的? 我想要SQL server的
如果是根据ID排序可以使用聚合函数 SELECT TOP 页大小 *FROM TestTableWHERE (ID > (SELECT MAX(id) FROM (SELECT TOP 页大小*页数 id FROM 表 ORDER BY id) AS T))ORDER BY ID如果不是,需要改一下条件 SELECT TOP 页大小 * FROM 表 Where 其他条件 AND ID Not in(Select top 页大小*页数 id From 表 where 其他条件 order by XXX) order by XXX网上也有很多现成的存储过程
而不是直接把前N+Size的全部数据一次查询返回,从而提高效率
可以用存储过程,也可以用分页控件防重复点击用Session,或者直接写到数据库里面,每天午夜用Job定时清零
字段为
stuID char(10)
stuName char(10)
major char(50)
有102条数据 分成6页。 求帮忙 我看了网上很多 但就是有些不明白 能不能直接带进去 让我了解下
DataAccess:ExecuteDataPaging().Detail Info:sqlText = SELECT * FROM MASMCR
DataAccess::ExecuteScalar().Detail Info:sqlText = SELECT COUNT(1) FROM (SELECT * FROM MASMCR )
)DataAccess::ExecuteDatatable().Detail Info:sqlText = SELECT * FROM ( SELECT A.*,ROWNUM R FROM (SELECT * FROM MASMCR )A WHERE ROWNUM<=20)B WHERE R>=11这是一个分页的流程,取得所有的数据一共多少条,然后看你页面上能显示多少条就根据这个分页
SELECT TOP 页大小 *FROM TestTableWHERE (ID > (SELECT MAX(id) FROM (SELECT TOP 页大小*页数 id FROM 表 ORDER BY id) AS T))ORDER BY ID如果不是,需要改一下条件
SELECT TOP 页大小 *
FROM 表
Where 其他条件 AND ID Not in(Select top 页大小*页数 id From 表 where 其他条件 order by XXX) order by XXX网上也有很多现成的存储过程