ASP中正则表达式的应用(二)

  五、总结
  上面我们介绍了正则表达式的基本概念,以及在VBScript和JavaScript中如何使用正则表达式,同时,通过一些实例让大家有了感性的认识。正则表达式的应用范围很广,能为大家解决很多实际中的问题。本文介绍的内容只是一些初步的知识,还有很多语法规则需要大家继续学习,在实践中发现问题,解决问题。 返回顶部



             怎么实现数据记录的分页显示(作者:DarkMan)

怎么实现数据记录的分页显示 (1)

       通过Recordset的GetRows方法,可以实现数据记录的分页显示。下面是一个完整的例子:
<%@ Language = VBSCRIPT %>
<% Option Explicit %>
<%
  Dim iStart, iOffset
  iStart = Request("Start")
  iOffset = Request("Offset")

  if Not IsNumeric(iStart) or Len(iStart) = 0 then
      iStart = 0
  else
      iStart = CInt(iStart)
  end if

  if Not IsNumeric(iOffset) or Len(iOffset) = 0 then
      iOffset = 10
  else
      iOffset = Cint(iOffset)
  end if

  Response.Write "察看 " & iOffset & " 个记录从 " & iStart & "开始 <BR>"

  Dim objConn, objRS
  Set objConn = Server.CreateObject("ADODB.Connection")
  objConn.Open "Provider=SQLOLEDB.1;Data Source=(local);uid=sa;pwd=;Initial    Catalog=pubs"

  Set objRS = Server.CreateObject("ADODB.Recordset")
  objRS.Open "SELECT * FROM Authors", objConn

  Dim aResults
  aResults = objRS.GetRows
数据挖掘实验室
  objRS.Close
  Set objRS = Nothing

  objConn.Close
  Set objConn = Nothing

  Dim iRows, iCols, iRowLoop, iColLoop, iStop
  iRows = UBound(aResults, 2)
  iCols = UBound(aResults, 1)

  If iRows > (iOffset + iStart) Then
      iStop = iOffset + iStart - 1
  Else
      iStop = iRows
  End If

  For iRowLoop = iStart to iStop
      For iColLoop = 0 to iCols
       Response.Write aResults(iColLoop, iRowLoop) & " "
     Next
      Response.Write "<BR>"
   Next  

  Response.Write "<P>"
  if iStart > 0 then
    "显示“前 10个”连接 数据挖掘研究院
      Response.Write "<A HREF=""paging.asp?Start=" & iStart-iOffset & _
                    "&Offset=" & iOffset & """>前 " & iOffset & "</A>"
   end if

  if iStop < iRows then
    "显示“后 10个”连接
     Response.Write " <A HREF=""paging.asp?Start=" & iStart+iOffset & _
                     "&Offset=" & iOffset & """>后 " & iOffset & "</A>"
  end if
%>


怎么实现数据的分页显示(2)
这里介绍另外一种分页显示的方法,是通过 MS SQL的存储过程。本方法不适用于Access数据库。
假设我们要对数据表MyTable的数据实现分页显示,首先写一个存储过程 如下:
CREATE PROCEDURE sp_PagedItems
        ( 数据挖掘工具
          @Page int,
          @RecsPerPage int
         )
  AS

  -- 加快表的 插入速度
  SET NOCOUNT ON

  -- 开始记录 号
  DECLARE @RecCount int
  SELECT @RecCount = @RecsPerPage * @Page + 1

  --创建临时 表
  CREATE TABLE #TempItems
  (
         ID int IDENTITY,
         Name varchar(50),
         Price currency
 )

  -- 准备临时 表
  INSERT INTO #TempItems (Name, Price)
         SELECT Name,Price FROM MyTable ORDER BY Price

  -- 求出要查 询的最小ID和最大ID
  DECLARE @FirstRec int, @LastRec int
  SELECT @FirstRec = (@Page - 1) * @RecsPerPage 数据挖掘实验室
  SELECT @LastRec = (@Page * @RecsPerPage + 1)

  -- 得到实际 的记录,并返回是否还有数据!
  SELECT *,
         MoreRecords =
        (
          SELECT COUNT(*)
          FROM #TempItems TI
          WHERE TI.ID >= @LastRec
        )
  FROM #TempItems
  WHERE ID > @FirstRec AND ID < @LastRec

  -- 恢复设置
  SET NOCOUNT OFF

  在这个存储过程里,我们首先创建一个全部 记录的临时表,并增加了一个自动编号的字段ID。这样,不同的记录就有一个递增的唯一标志。
  根据当前的页号和每页的记录数,可以计算 出每页的最小和最大的ID。从而得到当前页的所有记录。
  为了显示的方便,存储过程还计算了 MoreRecords字段,作为显示下一页的判断条件。
  利用了这个存储过程的程序代码如下:

数据挖掘交友


 <%
         "每页显示10条
         Const iRecordsPerPage = 10

         Dim currentPage    "当前页号
         Dim bolLastPage    "在最后一页?
         
        if len(Request.QueryString("page")) = 0 then
                currentPage = 1
        else
                currentPage = CInt(Request.QueryString("page"))
        end if

         "得到当前页的记录
         strSQL = "sp_PagedItems " & currentPage & "," & iRecordsPerPage 数据挖掘实验室
         objRS.Open strSQL, objConn
         
         "判断是否在最后一页
        if Not objRS.EOF then
                if CInt(objRS("MoreRecords")) > 0 then
                        bolLastPage = False
                else
                        bolLastPage = True
                end if
         end if
  %>
  <P>

数据挖掘工具



 <TABLE BORDER=0 CELLSPACING=1 CELLPADDING=4 ALIGN=CENTER>
  <TR><TH COLSPAN=2 BGCOLOR=NAVY>
         <FONT SIZE=+1 COLOR=WHITE>
                 List of Items
         </FONT>
  </TH></TR>
 <%
         Do While Not objRS.EOF %>
                <TR><TD ALIGN=LEFT BGCOLOR=GRAY>
                       <%=objRS("Name")%>
                </TD><TD ALIGN=CENTER BGCOLOR=GRAY>
                       <%=FormatCurrency(objRS("Price"))%> 数据挖掘实验室
                </TD></TR>
  <%         objRS.MoveNext
         Loop %>
 </TABLE>
  <P>
  <CENTER>
 <%

  "第一页不 显示“前一页”
 if currentPage > 1 then %>
         <INPUT TYPE=BUTTON VALUE="<< 前 <%=iMaxRecords%> 记录 "
         ONCLICK="document.location.href="thispage.asp?page=<%=currentPage-1%>""> ;
              
 <% end if

  "最后一页 不显示“后一页”
 if Not bolLastPage then %>
         <INPUT TYPE=BUTTON VALUE="后 <%=iMaxRecords%> 记录 >>"
         ONCLICK="document.location.href="thispage.asp?page=<%=currentPage+1%>""> ; 数据挖掘交友
 <% end if %>
  </CENTER>                                          
[数据挖掘专家] [数据挖掘研究院] [数据挖掘论坛] [数据挖掘实验室]
上一篇:ASP中正则表达式的应用(一)
下一篇:好东西,老外用正则表达式写的HTML分离函数
最新评论共有 0 位网友发表了评论 , 查看所有评论
发表评论( 不能超过250字,需审核,请自觉遵守互联网相关政策法规。 )
匿名?
数据挖掘网站导航 数据挖掘论坛导航
  • 数据挖掘工具
  • 数据挖掘论坛
  • DataCruncher - Cognos
  • MineSet - MathSoft
  • Intelligent Miner - GainSmarts
  • Sqlserver - SAS - Clementine
  • CART - Weka - WizSoft
  • NeuroShell - ModelQuest
  • data mining tools - Darwin
  • 数据挖掘交友
  • 数据挖掘博客
  • 数据挖掘工具
  • 数据挖掘资源
  • 数据挖掘技术算法
  • 数据挖掘相关期刊、会议
  • 研究院联盟合作专区
  • 数据挖掘基础与相关技术
  • 数据挖掘厂商与就业
  • 数据挖掘研究者乐园
  • 知名厂商数据挖掘工具资料
  • 国内数据挖掘实验室
  • Foreign Data Mining Lab
  • 热点关注
  • MDAC2.8下载!
  • 软件架构的十大错误
  • 没啥好东西了,贴一段我现在在用的产生随机
  • ASP+JS处理复杂表单的生成与验证
  • 无法加载DLL(OCI.DLL),如何解决?
  • 学习ASP有用的代码(很有用哦!)
  • 动态web开发语言项目 驳“ASP低能论”
  • 郁闷的System.Web.Mail
  • 利用ASP远程注册DLL的方法
  • 改进的ASP备份SQLServer数据库
  • 论坛最新话题
  • Foundations of Statistical Natural Langu
  • Game Theory meet Data Mining: A Recent P
  • System Building: How does it help or hin
  • 数据挖掘与Clementine培训
  • 新手报到
  • 求 SASEM 客户流失预测分析
  • 数据挖掘工程师/搜索研究院—北京——无线
  • 数据挖掘入门介绍(如何着手数据挖掘)
  • Information Overload Survey Results
  • The INEX 2005 Workshop on Element Retrie
  • 相关资讯
  • 软件架构的十大错误
  • JavaScript基础教程第四课
  • 改进的ASP备份SQLServer数据库
  • MVC构架实现之ASP
  • .net入门一些常见的东西
  • VisualStudio.NET2003不能调试ASP.Net程序
  • X.U.S.T原创:自己搭建IIS找ASP程序漏洞
  • 郁闷的System.Web.Mail
  • ASP错误代码总结
  • 从XML中读取数据!(Asp.net学习一)
  • 数据挖掘实验室资料
  • 数据挖掘博客地址
  • 数据挖掘实验室网站地址
  • Prepare for Medicare audits by using dat
  • 注册成为SAS用户与爱好者俱乐部会员
  • 水南梅
  • 明日烟
  • 新人报道
  • 下载
  • 厦门服务器托管,450元/月—0592-5177319 高
  • 买空间送域名--0592-5177319 高静