一个游标的sqlserver存储过程[zz]

发表于:2007-06-07来源:作者:点击数: 标签:
很少的语句,有时间再研究一下! create procedure pagemaker @ sql str nvarchar(4000), --查询字符串 @currentpage int,--第N页 @pagesize int--每页行数 as set nocount on declare @P1 int,--P1是游标的id @rowcount int exec sp_cursoropen @P1 output,@
很少的语句,有时间再研究一下!

create  procedure pagemaker
@sqlstr nvarchar(4000), --查询字符串
@currentpage int,--第N页
@pagesize int--每页行数
as
set nocount on
declare @P1 int,--P1是游标的id
@rowcount int
exec sp_cursoropen @P1 output,@sqlstr,@scrollopt=1,@clearcase/" target="_blank" >ccopt=1,@rowcount=@rowcount output
select ceiling(1.0*@rowcount/@pagesize) as 总页数--,@rowcount as 总行数,@currentpage as 当前页
set @currentpage=(@currentpage-1)*@pagesize+1
exec sp_cursorfetch @P1,16,@currentpage,@pagesize
exec sp_cursorclose @P1
set nocount off

原文转自:http://www.ltesting.net