当前位置:编程学习 > C#/ASP.NET >>

分页存储过程

if exists(select * from sysobjects where name='USP_GETPAGE')
DROP PROC USP_GETPAGE

GO

CREATE PROC USP_GETPAGE
@tableName varchar(50),
@colName varchar(300),
@pageSize int=10,
@pageIndex int=1,
@orderBy varchar(50)
as
if @pageIndex<=1
@pageIndex=1

declare @sql varchar(2000)
set @sql='select top '+convert(varchar(5),@pageSize)+' '+@colName
set @sql=@sql+ ' from '+@tableName
set @sql=@sql+ ' where id not in(select top '+convert(varchar(5),@pageSize*(@pageIndex-1))+' id from '
set @sql=@sql+ @tableName +' order by '+@orderBy+')'
set @sql=@sql+ ' order by '+@orderBy

exec (@sql)
go


exec usp_getpage @tableName='books',
@colName='id,title,author',
@pageIndex=3,
@orderby='publishDate desc',
@pageSize=10



exec usp_getpage @tableName='categories',
@colName='id,name',
@pageIndex=2,
@orderby='id',
@pageSize=10 --------------------编程问答-------------------- 沙发。。分页存储  还有 很多形式~~ --------------------编程问答-------------------- 分页存储过程想写全的话还点复杂,以前看过一个写的很全
将查询的表名 字段段 排序的字段名 分页的字段名  where条件等都作为参数传进去.
还是觉得复杂了, 用aspnetpager做省事多了,连存储过程都能生成 --------------------编程问答-------------------- 呵呵,这是好东西啊。 --------------------编程问答-------------------- 呵呵  有些控件自带 分页 呵呵  不过那是懒人的做法  在项目开发中 最好不用 呵呵 自己学个就OK拉 --------------------编程问答-------------------- zhichi --------------------编程问答-------------------- 你用的是sql 05吗,如果是的话,查下有关不错的分页方法。 --------------------编程问答-------------------- 我下午发个好的给你 --------------------编程问答-------------------- 一条SQL就可以搞定分页,搞SP那么复杂干什么
BAIDU 一把一大堆。 --------------------编程问答-------------------- 可以用分页类和第三方的分页组件! --------------------编程问答-------------------- 路过
补充:.NET技术 ,  ASP.NET
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,