ASP实例:利用缓存提高数据显示效率

翻译|其它|编辑:郝浩|2007-09-29 10:49:32.000|阅读 738 次

概述:

# 界面/图表报表/文档/IDE等千款热门软控件火热销售中 >>

实例演示:先建立一个简单的数据库,写个  function  读取一下,写入一个  dim  变量  temp  中:

 

ASP代码

 

以下为引用的内容:

<%       

Function DisplayRecords()       

    Dim sql, conn, rs       

    sql = "SELECT id, [szd_f], [szd_t] FROM admin"      

    Set conn = Server.CreateObject("ADODB.Connection")       

    conn.Open "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ="&Server.MapPath("db.mdb")       

    Set rs = Server.CreateObject("ADODB.Recordset")   

    rs.Open sql, conn, 1, 3

    If Not rs.EOF Then      

      Dim temp       

      temp = "<table width=""90%"" align=""center"""      

      temp = temp & " border=""1""  bordercolor=""silver"""      

      temp = temp & " cellspacing=""2"" cellpadding=""0"">"      

      temp = temp & "<tr bgcolor=""#CCDDEE""><td width=""5%"""      

      temp = temp & ">ID</td><td>操作</td>"

 

      temp = temp & "<td>数值</td></tr>"

    While Not rs.EOF       

      temp = temp & "<tr><td bgcolor=""#CCDDEE"">"      

      temp = temp & rs("ID") & "</td><td>" & rs("szd_f")       

      temp = temp & "</td><td>" & rs("szd_t")       

      temp = temp & "</td></tr>"      

      rs.MoveNext       

    Wend

      temp = temp & "</table>"

      DisplayRecords = temp   

    Else      

      DisplayRecords = "Data Not Available."      

    End If

    rs.Close       

    conn.Close       

    Set rs = Nothing      

    Set conn = Nothing      

End Function

'写入缓存       

Function DisplayCachedRecords(Secs)       

    Dim retVal, datVal, temp1       

        retVal = Application("cache_demo")       

        datVal = Application("cache_demo_date")

        If datVal = "" Then  

            datVal = DateAdd("s",Secs,Now)       

        End If

        temp1 = DateDiff("s", Now, datVal)      

    If temp1 > 0 And retVal <> "" Then      

        DisplayCachedRecords = retVal

        ' Debugging Code :       

        Response.Write "<b><font color=""green"">利用缓存读取数据"      

        Response.Write " ... (" & temp1 & " 秒剩余)</font></b>"      

        Response.Write "<br><br>"  

    Else

        Dim temp2       

        ' Change DisplayRecords() to the function whose        

        ' value you want to cache       

        temp2 = DisplayRecords()

        Application.Lock       

            Application("cache_demo") = temp2       

            Application("cache_demo_date") = DateAdd("s",Secs,Now)       

        Application.UnLock

        DisplayCachedRecords = temp2

        ' Debugging Code :       

        Response.Write "<b><font color=""red"">刷新缓存显示 ..."      

        Response.Write "</font></b><br><br>"

    End If      

End Function      

%>       

<!--       

Response.Write DisplayRecords()       

-->

<html>       

<head>       

    <title>利用缓存从数据库---读取数据</title>       

    <style>    

    body, p, td { font-family:Sans-Serif; font-size:8pt; }       

    td { padding-left: 5; }       

    </style>       

</head>       

<body>       

<%       

    Dim t1, t2       

        t1 = Timer       

    Response.Write DisplayCachedRecords(20)       

        t2 = Timer       

%>

<p align="center">       

停留时间: <%= Left((CDbl((t2 - t1) * 1000.0)), 5) %> ms        

 

</p>

</body>       

</html>  


标签:

本站文章除注明转载外,均为本站原创或翻译。欢迎任何形式的转载,但请务必注明出处、不得修改原文相关链接,如果存在内容上的异议请邮件反馈至chenjj@evget.com

文章转载自:网页教学网

为你推荐

  • 推荐视频
  • 推荐活动
  • 推荐产品
  • 推荐文章
  • 慧都慧问
扫码咨询


添加微信 立即咨询

电话咨询

客服热线
023-68661681

TOP