基于sql server 2005 分页的存储过程
alter procedure proGetAll(
@sort varchar(10), //升序还是降序
@fromTable varchar (20), //哪一个表
@pageIndex int, //第几行
@pageSize int, //每页显示多数行
@pageBy varchar (20) //根据哪一字段排序
)
as
begin
declare @sql nvarchar(max);
set @Sql='select * from (select (row_number() over('+@sort+' by '+@pageBy+')-1)/'+convert(varchar(20),@pageSize)+' as rowId, * from '+@fromTable+') a where rowId='+convert (varchar(20),@pageIndex)+'';
print @Sql;
exec sp_executesql @sql;
end
//测试 升序 用户表第一页每页3行排序字段
exec proGetAll 'order','users','1','3','userid'
页:
[1]