• 软件测试技术
  • 软件测试博客
  • 软件测试视频
  • 开源软件测试技术
  • 软件测试论坛
  • 软件测试沙龙
  • 软件测试资料下载
  • 软件测试杂志
  • 软件测试人才招聘
    暂时没有公告

字号: | 推荐给好友 上一篇 | 下一篇

ASP关于分页办法

发布: 2007-6-30 18:56 | 作者: admin | 来源: | 查看: 15次 | 进入软件测试论坛讨论

领测软件测试网     时间关系,没有经过完全测试,这个是大概意思。
  CREATE PROCEDURE getnotes
  
   @forumID varchar(10),
   @a_intPageNo int ,
   @a_intPageSize int,
   @rootID varchar(10)
  AS
   declare @m_intRecordNumber int
   declare @m_intStartRecord int
   declare @pagecount int
   declare @temp int
   declare @end int
   declare @sql varchar(500)
   declare @bbsname varchar(25)
   declare @articles int
   declare @manager varchar(30)
   declare @selectrootID varchar(500)
   declare @temprootID varchar(10)
  
   select @m_intRecordNumber = @a_intPageSize * @a_intPageNo
   select @m_intStartRecord = @a_intPageSize * (@a_intPageNo - 1) + 1
  
   set nocount on
   select @bbsname=subjectname,@manager=manager,@articles=articles from bbs_subjects where subjectID=@forumID
   if @rootID=@#0@#
   begin
   -- select @sql=@#declare m_curTemp Scroll cursor for select ID,title,shrink,rootID,orderID,pubtime,hits,bytes,username,email from bbs_forum_@#+@forumID+@# WHERE rootID in (select distinct rootID from bbs_forum_@#+@forumID+@# ) order by rootID desc,orderID asc@#
   select @sql=@#declare m_curTemp Scroll cursor for select rootID from bbs_forum_@#+@forumID+@# where rootID=parentID order by rootID desc@#
   end
   else
   select @sql=@#declare m_curTemp Scroll cursor for select ID,title,shrink,rootID,orderID,pubtime,hits,bytes,username,email from bbs_forum_@#+@forumID+@# where rootID=@#+@rootID+@# order by orderID asc@#
  
   exec(@sql)
   open m_curTemp
  
   set @pagecount = case
   when @@cursor_rows % @a_intPageSize=0 then @@cursor_rows / @a_intPageSize
   when @@cursor_rows % @a_intPageSize<>0 then @@cursor_rows / @a_intPageSize+1
   end
   if @@cursor_rows<@a_intPageSize and @@cursor_rows>0
   begin
   select @pagecount=1
   end
  
  
   if @rootID=@#0@#
   begin
   set @temp = 1
   set @selectrootID=@#0@#
   fetch absolute @m_intStartRecord from m_curTemp into @temprootID
   while @@fetch_status = 0 and @temp < @a_intPageSize
   begin
   set @temp = @temp + 1
   select @selectrootID=@selectrootID+@#,@#+@temprootID
   fetch next from m_curTemp into @temprootID
   end
   CLOSE m_curTemp
   DEALLOCATE m_curTemp
   set nocount off
   select @#pagecount@# = @pagecount
   select @#bbsname@#=@bbsname
   select @#manager@#=@manager
   select @#articles@#=@articles
   select @sql=@#declare curTemp Scroll cursor for select ID,title,shrink,rootID,orderID,Images,pubtime,hits,bytes,username,email from bbs_forum_@#+@forumID+@# where rootID in (@#+@selectrootID+@#) order by rootID desc,orderID asc@#
   exec(@sql)
   open curTemp
   fetch first from curTemp
   while @@fetch_status = 0
   begin
   fetch next from curTemp
   end
   CLOSE curTemp
   DEALLOCATE curTemp
   end
   else
   begin
   set @temp = 1
   set nocount off
   fetch absolute @m_intStartRecord from m_curTemp
   while @@fetch_status = 0 and @temp < @a_intPageSize
   begin
   set @temp = @temp + 1
   fetch next from m_curTemp
   end
   CLOSE m_curTemp
   DEALLOCATE m_curTemp
   end

文章来源于领测软件测试网 https://www.ltesting.net/


关于领测软件测试网 | 领测软件测试网合作伙伴 | 广告服务 | 投稿指南 | 联系我们 | 网站地图 | 友情链接
版权所有(C) 2003-2010 TestAge(领测软件测试网)|领测国际科技(北京)有限公司|软件测试工程师培训网 All Rights Reserved
北京市海淀区中关村南大街9号北京理工科技大厦1402室 京ICP备10010545号-5
技术支持和业务联系:info@testage.com.cn 电话:010-51297073

软件测试 | 领测国际ISTQBISTQB官网TMMiTMMi认证国际软件测试工程师认证领测软件测试网