預存程序的分頁!!

來源:互聯網
上載者:User
預存程序|分頁 create proc up_GetTopicList
       @a_strForumID varchar(50) ,
       @a_intPageNo int  ,
       @a_intPageSize int
as
   /*定義局部變數*/
   declare @intBeginID         int
   declare @intEndID           int
   declare @intRootRecordCount int
   declare @intPageCount       int
   declare @intRowCount        int
   /*關閉計數*/
   set nocount on
   
  
   /*求總共根貼數*/
   select @intRootRecordCount = count(*) from bbs_topic where fatherid=0 and forumid=@a_strForumID
   if (@intRootRecordCount = 0)    --如果沒有貼子,則返回零
       return 0
       
   /*判斷頁數是否正確*/
   if (@a_intPageNo - 1) * @a_intPageSize > @intRootRecordCount
      return (-1)

   /*求開始rootID*/
   set @intRowCount = (@a_intPageNo - 1) * @a_intPageSize + 1
   /*限制條數*/
   set rowcount @intRowCount
   select @intBeginID = rootid from bbs_topic where fatherid=0 and forumid=@a_strForumID
          order by tid desc

   /*結束rootID*/
   set @intRowCount = @a_intPageNo * @a_intPageSize
   /*限制條數*/
   set rowcount @intRowCount
   select @intEndID = rootid from bbs_topic where fatherid=0 and forumid=@a_strForumID
          order by tid desc

   /*恢複系統變數*/
   set rowcount 0
   set nocount off   

   select a.tid , a.layer , a.forumid , a.subject , a.faceid , a.hits , a.posttime , a.UserID , a.fatherid , a.rootid ,
         'Bytes' = datalength(a.content) , b.loginname  , b.Email  , b.HomePage , b.Signature , b.Point
     from bbs_topic as a join BBS_User as b on a.UserID = b.uid
     where Forumid=@a_strForumID and a.rootid between @intEndID and @intBeginID
         order by a.rootid desc , a.ordernum desc
   return(@@rowcount)
   --select @@rowcount
go    

怎麼操作就不貼了!!大家好好看看,

相關文章

E-Commerce Solutions

Leverage the same tools powering the Alibaba Ecosystem

Learn more >

Apsara Conference 2019

The Rise of Data Intelligence, September 25th - 27th, Hangzhou, China

Learn more >

Alibaba Cloud Free Trial

Learn and experience the power of Alibaba Cloud with a free trial worth $300-1200 USD

Learn more >

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。