SQLSERVER一个比较不错的分页存储过程p_splitpage

9/1/2015来源:SQL技巧人气:1675

SQLSERVER一个比较不错的分页存储过程p_splitpage
CREATE PRocedure p_splitpage@sql nvarchar(4000), --要执行的sql语句@page int=1,    --要显示的页码@pageSize int,  --每页的大小@pageCount int=0 out, --总页数@recordCount int=0 out --总记录数asset nocount ondeclare @p1 intexec sp_cursoropen @p1 output,@sql,@scrollopt=1,@ccopt=1,@rowcount=@pagecount outputset @recordCount = @pageCountselect @pagecount=ceiling(1.0*@pagecount/@pagesize),@page=(@page-1)*@pagesize+1exec sp_cursorfetch @p1,16,@page,@pagesizeexec sp_cursorclose @p1GO