欢迎来到福编程网,本站提供各种互联网专业知识!
您的位置:网站首页 > 数据库 > MsSql

分页的存储过程

发布时间:2006-08-24 作者: 来源:转载
复制代码代码如下:Createproceduresp_pageQuery@sqlstrnvarchar(4000),@page_indexint,@page_sizeint,@rec_countintout--assetnocountondeclare@cursor_idintdeclare@rowcountintexecsp_cursoropen@cursor_idoutput,@sqlstr,@scrol
复制代码 代码如下:
Createproceduresp_pageQuery

@sqlstrnvarchar(4000),
@page_indexint,
@page_sizeint,
@rec_countintout--
as
setnocounton
declare@cursor_idint
declare@rowcountint

execsp_cursoropen@cursor_idoutput,@sqlstr,@scrollopt=1,@ccopt=1,@rowcount=@rowcountoutput

set@rec_count=@rowcount

set@page_index=(@page_index-1)*@page_size+1

IF@rec_count>0
BEGIN
execsp_cursorfetch@cursor_id,16,@page_index,@page_size
END
ELSE
BEGIN
Select'test'='null'Where1=2
END

execsp_cursorclose@cursor_id
setnocountoff
GO



在要用的时候在那个存储过程里调用
复制代码 代码如下:
CreatePROCEDURE[dev].[P_Mobile_Comment_Page]
@course_ware_idint,
@recCountPerPageint=1,
@pageIndexint=1,
@recordCountint=0out
AS

DECLARE@sqlnvarchar(4000)

SET@sql="
Selectseg_id,course_ware_id,subject,cust_name,content,create_date
FROMT_COURSEWARE_COMMENT
Wherecourse_ware_id="+cast(@course_ware_idasvarchar(10))+"
ORDERBYseg_id"
EXECsp_Pagequery@sql,@pageIndex,@recCountPerPage,@recordCountout

GO


相关推荐