ADO durch GetString() beschleunigen
- Vorherige Seite ADO löschen
- Nächste Seite ADO Command
请使用 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>
Für eine große Abfrage erhöht dies die Verarbeitungsdauer des Skripts, da der Server eine Vielzahl von Response.Write-Befehlen verarbeiten muss.
Die Lösung besteht darin, den gesamten String von <table> bis </table> zu erstellen und ihn dann einmalig mit Response.Write auszugeben.
Methode GetString()
Die Methode GetString() ermöglicht es uns, alle Strings mit nur einem Aufruf von Response.Write anzuzeigen. Und es ist sogar nicht erforderlich, do..loop-Code sowie Bedingungstests zu verwenden, um zu überprüfen, ob die Recordset im EOF ist.
Syntax
str = rs.GetString(format, rows, coldel, rowdel, nullexpr)
Um eine HTML-Tabelle aus den Daten der Recordset zu erstellen, benötigen wir nur drei der oben genannten Parameter (alle Parameter sind optional):
- coldel - HTML, das als Spalten-Trennzeichen dient
- rowdel - HTML, das als Zeilen-Trennzeichen dient
- nullexpr - HTML, das verwendet wird, wenn eine Spalte leer ist
Anmerkung:Die Methode GetString() ist eine Eigenschaft von ADO 2.0. Sie können ADO 2.0 von der folgenden Adresse herunterladen:http://www.microsoft.com/data/download.htm
In den folgenden Beispielen verwenden wir die Methode GetString(), um die Recordset als String zu speichern:
<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>"," ") %> <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>
Die Variable str enthält eine Zeichenfolge, die alle Spalten und Zeilen, die durch ein SELECT-Statement zurückgegeben werden, enthält. Zwischen den Spalten wird </td><td> und zwischen den Zeilen </td></tr><tr><td> angezeigt. Auf diese Weise erhalten wir mit nur einem Aufruf von Response.Write die erforderliche HTML.
- Vorherige Seite ADO löschen
- Nächste Seite ADO Command