免费注册 | 休息吧
中国在线招生
 首 页 新闻资讯  高校招生  职业技校  培训机构  资格认证  高级研修  学习需求  教育博客
         公告:欢迎光临中国在线招生网站,2008全新改版,为各类学校提供更为优质的服务
2008年外教英语夏令营
  您所在的位置:首页  > 培训机构 > IT培训资料 >  提高ASP的速度的方法:GetString
 

提高ASP的速度的方法:GetString

2008-9-3 文章来源:考试大  责任编辑:飞轮海 字体: [ ]
      许多ASP程序员都有过执行数据库查询,然后将查询结果用HTML表格的形式显示出来的经历。通常我们是这么做的:
  以下是引用片段:
  <%
  ’Create connection / recordset
  ’Populate data into recordset object
  %>
  <TABLE>
  <% Do While not rs.EOF %>
  <TR>
  <TD ><%=rs("Field1")% ></TD>
  <TD ><%=rs("Field2")% ></TD>
  .
  </TR>
  <% rs.MoveNext
  Loop %>
  </TABLE>
  如果查询结果很多,服务器解释你的ASP script将花费大量的时间,因为有许多的Response.Write语句要处理. 如果你将输出的全部结果放在一个很长的字符串里(从 到 ),那么服务器只需解释一遍Response.Write语句,速度就会快得多 . 微软公司里的一些能干的家伙已经将想法变成了现实. (注意,这是一个ADO 2.0以上才有的特性. 如果你还在使用以前版本的话,请升级到最新版)
  有了GetString方法,我们就可以仅用一个Response.Write来显示所有的输出了,它就象是能判断Recordset是否为EOF的DO ... LOOP循环。
  GetString的用法如下(所有的参数都是可选的):
  String = recordset.GetString(StringFormat, NumRows, ColumnDelimiter, RowDelimiter, NullExpr)
  要从Recordset的结果里生成HTML表格,我们只需关心GetString的5个参数中的3个:
  ColumnDelimiter(分隔记录集的列的HTML代码),RowDelimiter(分隔记录集的行的HTML 代码),和NullExpr(当前记录为空时应生成的HTML代码)。就象你在下面生成HTML表格的例子里所看到的那样,每列用 ...分隔,每行用 ...分隔。
  例子的代码:
  以下是引用片段:
  <%@ LANGUAGE="VBSCRIPT" %>
  <% Option Explicit ’Good coding technique
  ’Establish connection to DB
  Dim conn
  Set conn = Server.CreateObject("ADODB.Connection")
  conn.Open "DSN=Northwind;"
  ’Create a recordset
  Dim rs
  Set rs = Server.CreateObject("ADODB.Recordset")
  rs.Open "SELECT * FROM table1", conn
  ’Store our one big string
  Dim strTable
  strTable = rs.GetString(,,"</td ><td >","</td ></tr ><tr ><td >"
  ," ")
  %>
  <HTML>
  <BODY>
  <TABLE>
  <TR ><TD>
  <% Response.Write(strTable) %>
  </TR ></TD>
  </TABLE>
  </BODY>
  </HTML>
  <%
  ’Cleanup!
  rs.Close
  Set rs = Nothing
  conn.Close
  Set conn = Nothing
  %>
  strTable字符串用于存放我们从"SELECT * FROM table1"结果生成的HTML表格的代码。
  HTML表格的每列之间都将有 的HTML代码,每行之间的HTML代码是 . GetString方法将输出正确的HTML代码并存放在strTable中,这样我们只需一行Response.Write便可以输出数据集中的所有记录. 让我们来看个简单的例 子,假设我们的查询结果返回了以下的行和列:
  以下是引用片段:
  Col1 Col2 Col3
  Row1 Bob Smith 40
  Row1 Ed Frank 43
  Row1 Sue Void 42
  GetString语句返回的字符串将是:
  以下是引用片段:
  Bob</td ><td >Smith</td ><td >40</td ><td ></td ></tr ><tr ><
  td
  >Ed ...
  这个字符串看上去冗长而杂乱,但它就是想要的HTML代码。(注意看,我们在手工书写的HTML代码中,将放在它的后面. 这是因为我们的格式化字符串中并不含有这些表格 头尾所需的字符串。)
相关新闻
· ASP教程:applicaton对象的使用集合
· 管理和技术并重破解网络优化难题
· 如何成为一名优秀的程序员
· 如何轻松通过软件设计师考试
· FTP上传文件经常中断或超时的解决方
· 配置VLANH3CER路由器轻松划分虚拟网
· 内存的不同用途
· ASP.NET将数据库里的记录转换成jso
· 加密技术的全方面知识
· IIS服务中FTP站点的建立与维护
最近更新
· 金融危机 很多人考研工作两手准备
· 清华考研报名人数近12400人
· 一份详细培训计划书
· 河北艺考音乐类时间撞车
· 上海09美术类首划本科线 艺考志愿不
· 山东高考报名允许临时身份证 考试须
· 山东高考统一划线系谣传
· 四川明年美术专业不再参加高校校考
· 湖北08年成人高考录取分数线
· 当上后备空姐≠进入航空公司
 
热门院校推荐
· 甘肃金岛汽车职业技术学校
· 孙进技校总校招生
· 成都金沙职业技术学校
· 深圳启程教育集团
· 北京吉米专业形象设计职业技能培训学
· 哈尔滨唯美设计学校
· 黑龙江新希望职业技能培训学校
· 哈尔滨女王美容美发化妆学校
· 哈尔滨绿豆豆英语学校
· 哈尔滨市劳动和社会保障局技工学校
· 甘肃庆阳市华音DJ音乐工作室
· 郑州四方模具学校
· 湖南省阳光电子技术学校
· 上海向阳生涯管理咨询有限公司
· 山东星火学院
· 哈尔滨嘉信会计学校
· 哈尔滨鹰舞舞蹈学校
· 哈尔滨市科海微机外语财会学校
· 哈尔滨创意电脑职业技能培训学校
· 黑龙江李枫美容职业技能培训学校
 
 
 
     
浙江 广东 湖北 黑龙江
安徽 河南 重庆 北京
天津 辽宁 上海 江苏
福建 江西 吉林 河北
湖南 山东 四川 更多>>
赞助广告
最新招生信息
热点新闻
 
高校信息
Zsol.org | 本站承诺 | 战略伙伴•招生分站点 | 友情链接 | 付款方式 | 广告业务 | 联系我们
Copyright © 2005-2008 中国在线招生 | 运营商:杭州骄羽科技有限公司 浙ICP备06036992号
增值电信业务经营许可证:浙B2-20080090