使用为公开的存储过程sp_cursoropen实现分页
2009-09-20 21:13
465 查看
--利用SQL未公开的存储过程实现分页
if exists (select * from dbo.sysobjects
where id = object_id(N'[dbo].[p_splitpage]')
and OBJECTPROPERTY(id, N'IsProcedure') = 1)
drop procedure [dbo].[p_splitpage]
GO
create procedure p_splitpage
@sql nvarchar(4000), --要执行的sql语句
@currentpage int=2, --要显示的页码
@pagesize int=10, --每页的大小
@recordcount int=0 out, --记录数
@pagecount int=0 out --总页数
as
set nocount on
declare @p1 int
exec sp_cursoropen @p1 output,@sql,@scrollopt=1,@ccopt=1,@rowcount=@pagecount output
select @recordcount=@pagecount,@pagecount=ceiling(1.0*@pagecount/@pagesize)
,@currentpage=(@currentpage-1)*@pagesize+1
select @recordcount recordcount ,@pagecount pagecount,@currentpage currentpage
exec sp_cursorfetch @p1,16,@currentpage,@pagesize
exec sp_cursorclose @p1
go
if exists (select * from dbo.sysobjects
where id = object_id(N'[dbo].[p_splitpage]')
and OBJECTPROPERTY(id, N'IsProcedure') = 1)
drop procedure [dbo].[p_splitpage]
GO
create procedure p_splitpage
@sql nvarchar(4000), --要执行的sql语句
@currentpage int=2, --要显示的页码
@pagesize int=10, --每页的大小
@recordcount int=0 out, --记录数
@pagecount int=0 out --总页数
as
set nocount on
declare @p1 int
exec sp_cursoropen @p1 output,@sql,@scrollopt=1,@ccopt=1,@rowcount=@pagecount output
select @recordcount=@pagecount,@pagecount=ceiling(1.0*@pagecount/@pagesize)
,@currentpage=(@currentpage-1)*@pagesize+1
select @recordcount recordcount ,@pagecount pagecount,@currentpage currentpage
exec sp_cursorfetch @p1,16,@currentpage,@pagesize
exec sp_cursorclose @p1
go
相关文章推荐
- 使用为公开的存储过程sp_cursoropen实现分页(转)
- 1 用存储过程实现分页,除了上一页,下一页,第一页,和末页外还要有go按钮,以及go到那里的文本框。另外还要在Lable显示“当前x页,一共y页”。注意验证控件的使用和 链接存储过程的内容。
- SQL 使用系统存储过程实现的通用分页存储过程
- SQL Server:使用系统存储过程实现的通用分页存储过程
- 利用SQL未公开的存储过程实现分页
- 利用SQL2000未公开的存储过程实现分页
- 使用系统存储过程实现的通用分页存储过程.sql
- 使用Dapper接收多个结果集,并实现存储过程分页
- 使用系统存储过程实现的通用分页存储过程
- 使用系统存储过程实现的通用分页存储过程
- 利用SQL未公开的存储过程实现分页
- 利用SQL未公开的存储过程实现分页
- SqlServer中使用row_number() over实现通用的分页存储过程
- 使用AspNetPager分页控件、分页存储过程及用户控件基类实现的完美分页功能
- 使用vs2005的rowNumber对数据实现分页的存储过程。
- SQL Server通用分页存储过程:利用SQL Server未公开的存储过程实现
- DataGrid分页数据库存储过程而实现的分页 和sp_cursor 分页
- 使用AspNetPager分页控件、分页存储过程及用户控件基类实现的完美分页功能
- 使用AspNetPager分页控件、分页存储过程及用户控件基类实现的完美分页功能
- 利用SQL未公开的存储过程实现分页(更加好用的一个!)