2017計(jì)算機(jī)等考三級數(shù)據(jù)庫基礎(chǔ):一個(gè)游標(biāo)的sqlserver存儲過程

字號:


    少的語句,有時(shí)間再研究一下!
    create procedure pagemaker
    @sqlstr nvarchar(4000), --查詢字符串
    @currentpage int,--第N頁
    @pagesize int--每頁行數(shù)
    as
    set nocount on
    declare @P1 int,--P1是游標(biāo)的id
    @rowcount int
    exec sp_cursoropen @P1 output,@sqlstr,@scrollopt=1,@ccopt=1,@rowcount=@rowcount output
    select ceiling(1.0*@rowcount/@pagesize) as 總頁數(shù)--,@rowcount as 總行數(shù),@currentpage as 當(dāng)前頁
    set @currentpage=(@currentpage-1)*@pagesize+1
    exec sp_cursorfetch @P1,16,@currentpage,@pagesize
    exec sp_cursorclose @P1
    set nocount off