一个分页存储过程

panming628628

panming628628

2016-01-29 18:34

一个分页存储过程,一个分页存储过程
  /*****听以前的同事说asp页面上的分页太慢了(如果数据多了),
就想了这么个笨办法。有些地方还要考虑----比如select top 22 * from cat_list
where T_id not in (select T_id from #change)是否有效率问题;数据不能重复等等
不过灵活性挺好。希望各位高手再给帮忙改正;多谢chair3的帮助---这个存储过程还可以在加入几个变量,随便大家改吧:)*****/


CREATE  proc page
@pagenum int
as
SET NOCOUNT ON             /*-----这一句很重要哦:)),不然它只会认 insert #change......这个数据集:))*/
declare @sql nvarchar(500)  --声明动态sql执行语句
declare @pagecount int      --当前页数

--取得当前数据库的记录总数
declare @row_num int  
begin      
select @row_num=count(*) from cat_list

--创建临时表,作为数据过滤
create table #change (T_id int)

--判断当前页数
if @row_num6  --大于页面显示记录数,则分页
begin
set  @row_num=@pagenum*6
  
  if @row_num=6
select top 6 * from cat_list
else
begin
set  @row_num=(@pagenum-1)*6
set @pagecount=@row_num
set @sql=N'insert #change (T_id) select top '+cast(@pagecount as char(100))+' T_id from cat_list where T_id not in (select T_id from #change)'
exec sp_executesql @sql
select top 6 * from cat_list where T_id not in (select T_id from #change)
  end
end
else    --只现实全部的数据
select * from cat_list
end
GO



客户端这样调用:
<!--#include file="conn.asp"--
<!--#include file="adovbs.inc"--
<%    dim T_com
                                        dim T_rs'declare datamanage recordset
                                        

dim parameters
set T_com=server.createobject("adodb.command")
T_com.ActiveConnection=conn
T_com.CommandText="page"
T_com.CommandType=adCmdStoredProc
'T_com.Prepared=true
set parameters=T_com.CreateParameter("@pagenum",adInteger,adParamInput)
T_com.Parameters.Append parameters
dim page
page=request.QueryString("page")
    if page="" then
        page=1
    end if
T_com("@pagenum")=page
set T_rs=T_com.Execute

do while not T_rs.eof
response.Write T_rs("c_name")
T_rs.movenext
loop
%
<a href="a.asp?page=<%=page+1%"ddddd</a

 
展开更多 50%)
分享

猜你喜欢

一个分页存储过程

ASP
一个分页存储过程

一个分页存储过程代码

编程语言 网络编程
一个分页存储过程代码

s8lol主宰符文怎么配

英雄联盟 网络游戏
s8lol主宰符文怎么配

一个简单的用存储过程分页

Web开发
一个简单的用存储过程分页

一个高效的数据分页的存储过程

ASP
一个高效的数据分页的存储过程

lol偷钱流符文搭配推荐

英雄联盟 网络游戏
lol偷钱流符文搭配推荐

存储过程分页

ASP
存储过程分页

一个比较实用的大数据量分页存储过程

编程语言 网络编程
一个比较实用的大数据量分页存储过程

lolAD刺客新符文搭配推荐

英雄联盟
lolAD刺客新符文搭配推荐

轻松校对 巧用Word给PPT里的文档汉字纠错

轻松校对 巧用Word给PPT里的文档汉字纠错

修改注册表让Windows XP自动登录

修改注册表让Windows XP自动登录
下拉加载更多内容 ↓