以下是我以前的ASP分页程序:
page=cint(request.querystring("page"))sqll="select * from hotel_main order by id desc"
set rs=server.createobject("adodb.recordset")
rs.open sqll,conn,1,1rs.pagesize=12
if page<1 then
page=1
elseif page>rs.pagecount then
page=rs.pagecount
end if
rs.AbsolutePage = page
for i=1 to rs.pagesize
if rs.eof then exit for response.write rs("id")&rs("username") '循环输出IDrs.movenext
next=======下面是分页=========<a href=?page=1>首页</a>
<a href=?page=<%=page-1%>>上一页</a>
<a href=?page=<%=page+1%>>下一页</a>
<a href=?page=<%= rs.pagecount %>>最后一页</a>问题:hotel_main 表里面有几W条数据。一开始只有几千条数据时,可以很快显示..但是现在量越来越大了..显示都要10几秒..谁能帮我写一下sql存储过程啊???求助高手相助...
page=cint(request.querystring("page"))sqll="select * from hotel_main order by id desc"
set rs=server.createobject("adodb.recordset")
rs.open sqll,conn,1,1rs.pagesize=12
if page<1 then
page=1
elseif page>rs.pagecount then
page=rs.pagecount
end if
rs.AbsolutePage = page
for i=1 to rs.pagesize
if rs.eof then exit for response.write rs("id")&rs("username") '循环输出IDrs.movenext
next=======下面是分页=========<a href=?page=1>首页</a>
<a href=?page=<%=page-1%>>上一页</a>
<a href=?page=<%=page+1%>>下一页</a>
<a href=?page=<%= rs.pagecount %>>最后一页</a>问题:hotel_main 表里面有几W条数据。一开始只有几千条数据时,可以很快显示..但是现在量越来越大了..显示都要10几秒..谁能帮我写一下sql存储过程啊???求助高手相助...
create proc proc_ahweb236 (@pageMa int)
as
select top 12 * from ahweb236 where not exists
(select top (12*@pageMa-1) * from ahweb236 order by id ) order by id/*
12记录为一页*/
---修改
create proc proc_ahweb236 (@pageMa int)
as
declare @i varchar(10)
set @i = cast(12*(@pageMa-1) as varchar)
declare @sql varchar(100)select @sql ='select top 12 * from linsy008 where not exists (select top ' +@i+' id from linsy008 order by id) 'exec (@sql )