当前位置: 首页 > 图文教程 > 网络编程 > ASP > ADO初学者教程:ADO 通过GetString()加速脚本

ASP
ASP技巧:在Access数据库中重命名表
用ASP编程实现网络内容快速查找
比较ASP生成静态HTML文件的几种方法
ASP实例:实现邮件发送普通附件和嵌入附件
如何用ASP实现去掉三个最高分和三个最低分
ASP实例:Access为后台数据库的网站统计系统
用标签替换的方法生成静态网页
例程:用ASP判断文件地址是否有效
学ASp动态网页必备:常用的38个函数
ASP教程:初次接触学习ASP脚本程序
ASPJPEG水印中关于文字水印的帮助文档(中英文对照)
ASP例子:ASP把汉字转化为拼音的函数
ASP教程:学习ASP应用Cookies的技巧
ASP入门:认识ASP程序所使用的几种脚本语言
初学者的ASP教程:常用ASP内置函数
ASP初级教程之ASP对表单和用户输入的处理
学习ASP文件引用的方法
用ASP编写更人性化的弹出窗口程序
谈谈学习ASP动态网页制作技术的编程心得
用ASP程序实现网站在线人数统计

ASP 中的 ADO初学者教程:ADO 通过GetString()加速脚本


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-08-14   浏览: 50 ::
收藏到网摘: n/a

作者:请使用GetString()方法来加速您的ASP脚本(来代替多行的Response.Write)。

实例

使用 GetString()

如何使用GetString()在HTML表格中显示记录集中的数据。

多行Response.Write

下面的例子演示了在HTML表格中显示数据库查询的一种方法:

以下为引用的内容:

<html>
<body>
<%
set conn=Server.CreateObject("ADODB.Connection")
conn.Provider="Microsoft.Jet.OLEDB.4.0"
conn.Open "c:/webdata/northwind.mdb"
set rs = Server.CreateObject("ADODB.recordset")
rs.Open "SELECT Companyname, Contactname FROM Customers", conn
%>
<table border="1" width="100%">
<%do until rs.EOF%>
   <tr>
      <td><%Response.Write(rs.fields("Companyname"))%></td>
      <td><%Response.Write(rs.fields("Contactname"))%></td>
   </tr>
<%rs.MoveNext
loop%>
</table>
<%
rs.close
conn.close
set rs = Nothing
set conn = Nothing
%>
</body>
</html>

对于一个大型的查询来说,这样做会增加脚本的处理时间,这是由于服务器需要处理大量的Response.Write命令。

解决的办法是创建全部字符串,从<table>到</table>,然后将其输出 - 只使用一次Response.Write。

GetString() 方法

GetString()方法使我们有能力仅使用一次Response.Write,就可以显示所有的字符串。同时它甚至不需要do..loop代码以及条件测试来检查记录集是否处于EOF。

语法

str = rs.GetString(format,rows,coldel,rowdel,nullexpr)

如需使用来自记录集的数据创建一个HTML表格,我们仅仅需要使用以上参数中的三个(所有的参数都是可选的):

coldel - 用作列分隔符的HTML

rowdel - 用作行分隔符的HTML

nullexpr - 当列为空时所使用的HTML

注释:The GetString()方法是ADO 2.0的特性。您可从下面的地址下载ADO 2.0:http://www.microsoft.com/data/download.htm

在下面的例子中,我们将使用GetString()方法,把记录集存为一个字符串:

以下为引用的内容:

<html>
<body>
<%
set conn=Server.CreateObject("ADODB.Connection")
conn.Provider="Microsoft.Jet.OLEDB.4.0"
conn.Open "c:/webdata/northwind.mdb"
set rs = Server.CreateObject("ADODB.recordset")
rs.Open "SELECT Companyname, Contactname FROM Customers", conn
str=rs.GetString(,,"</td><td>","</td></tr><tr><td>","&nbsp;")
%>
<table border="1" width="100%">
  <tr>
    <td><%Response.Write(str)%></td>
  </tr>
</table>
<%
rs.close
conn.close
set rs = Nothing
set conn = Nothing
%>
</body>
</html>

上面的变量str包含着由SELECT语句返回的所有列和行的一个字符串。在每列之间会出现</td><td>,在每行之间会出现</td></tr><tr><td>。这样,仅使用一次Response.Write,我们就得到了需要的HTML。