Najnowsze tutoriale tworzenie stron internetowych
 

ADO Speed ​​Up With getString ()


Użyj GetString() metodę, aby przyspieszyć swój skrypt ASP (zamiast korzystania z wielu Response.Write'S).


koszulka Wiele Response.Write

Poniższy przykład ilustruje jeden ze sposobów w jaki sposób wyświetlać zapytania do bazy danych w tabeli 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>

Dla dużej zapytania, może to spowolnić czas przetwarzania skryptu, ponieważ wiele poleceń Response.Write muszą być przetwarzane przez serwer.

Rozwiązaniem jest mieć cały ciąg utworzony z <table> do </ table>, a następnie wyjście to - używając Response.Write tylko raz.


GetString() Metoda

GetString() metoda pozwala na wyświetlanie ciąg tylko z jednym Response.Write. Eliminuje również do ... kod i test pętli warunkowej, która sprawdza czy rekordów jest na EOF.

Składnia

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

Aby utworzyć tabelę HTML z danymi z zestawu rekordów, musimy używać tylko trzy z powyższych parametrów (all parameters are optional) :

  • coldel - HTML do stosowania jako kolumny separatora
  • rowdel - HTML do wykorzystania jako wiersz separatora
  • nullexpr - HTML, aby użyć, jeśli kolumna ma wartość NULL

Note: GetString() metodą jest 2,0 ADO właściwość. Można pobrać ADO 2.0 na http://www.microsoft.com/data/download.htm .

W poniższym przykładzie użyjemy GetString() metodę trzymać rekordów jako ciąg znaków:

Przykład

<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>

Pokaż przykład »

Zmienna str powyżej zawiera ciąg wszystkich kolumn i wierszy zwracanych przez zapytania SELECT. Pomiędzy każdym kolumnie HTML </td><td> pojawi, a między każdym rzędzie HTML </td></tr><tr><td> pojawi. To będzie produkować dokładną HTML musimy tylko jeden Response.Write.