千家信息网

通用游标分页存储过程PageSplit

发表于:2025-01-27 作者:千家信息网编辑
千家信息网最后更新 2025年01月27日,ALTER procedure [dbo].[PageSplit] @sql varchar(max),--要执行的sql语句@page int=1, --要显示的页码@pageSize int,--
千家信息网最后更新 2025年01月27日通用游标分页存储过程PageSplit
ALTER procedure [dbo].[PageSplit] @sql varchar(max),--要执行的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)if @page > @pagecount    select @page = @pagecountselect @page=(@page-1)*@pagesize+1exec sp_cursorfetch @p1,16,@page,@pagesize exec sp_cursorclose @p1
0