--创建分页的存储过程
alter procedure proc_page
@tabName varchar(50),
@pageIndex int=1,
@pageSize int=5,
@pk varchar(20)='id',
@cols varchar(200)='*',
@where varchar(500)='1=1',
@order varchar(50)='',
@count int output,
@pageCount int output
as
declare @sql varchar(1000)
if(@order='')
set @order=@pk
set @sql='select top '+CONVERT(varchar(20),@pageSize)+' '+@cols+' from '+@tabName+' where '+@pk
+' not in (select top '+CONVERT(varchar(20),(@pageIndex-1)*@pageSize)+' '+@pk+' from '+@tabName
+' where '+@where+' order by '+@order+') and '+@where+' order by '+@order
print @sql
exec sp_sqlexec @sql
exec proc_page @tabName='userInfo'
本文介绍了一种使用SQL存储过程实现分页查询的方法。通过定义存储过程`proc_page`,参数包括表名、页码、每页大小等,实现了灵活的分页查询功能。此方法适用于需要频繁进行分页操作的场景。
171

被折叠的 条评论
为什么被折叠?



