Poradniki ASP

ASP DOM

Samouczek WP

Wprowadzenie do stron internetowych Strony internetowe Brzytwa Układ stron internetowych Foldery stron internetowych Globalne strony internetowe Formularze stron internetowych Obiekty stron internetowych Pliki stron internetowych Bazy danych stron internetowych Pomocnicy stron internetowych Strony internetowe WebGrid Wykresy stron internetowych Adres e-mail stron internetowych Bezpieczeństwo stron internetowych Strony internetowe Opublikuj Przykłady stron internetowych Klasy stron internetowych

Brzytwa ASP.NET

Wprowadzenie do brzytwy Składnia brzytwy Zmienne C# brzytwy Pętle C# brzytwy Razor C# Logika Zmienne VB brzytwy Pętle Razor VB Razor VB Logic

ASP klasyczny

Wprowadzenie do ASP Składnia ASP Zmienne ASP Procedury ASP Warunki korzystania z ASP Zapętlanie ASP Formularze ASP Pliki cookie ASP Sesja ASP Aplikacja ASP ASP #zawiera ASP Global.as ASP AJAX e-mail ASP Przykłady ASP

Odniesienie do ASP

Funkcje ASP VB Słowa kluczowe ASP VB Odpowiedź ASP Zapytanie ASP Aplikacja ASP Sesja ASP Serwer ASP Błąd ASP System plików ASP Strumień tekstowy ASP Dysk ASP Plik ASP Folder ASP Słownik ASP ASP AdRotator Przeglądarka ASP Łączenie treści ASP Rotator treści ASP Szybkie ref. ASP

Samouczek ADO

Wprowadzenie ADO Connect Zestaw rekordów ADO Wyświetlacz ADO Zapytanie ADO Sortuj ADO ADO Dodaj Aktualizacja ADO ADO Usuń Demo ADO Przyspieszenie ADO

Obiekty ADO

ADO Polecenie Połączenie ADO Błąd ADO Pole ADO Parametr ADO Nieruchomość ADO Rekord ADO Zestaw rekordów ADO Strumień ADO Typy danych ADO

ADO przyspiesz z GetString()


Użyj metody GetString(), aby przyspieszyć skrypt ASP (zamiast używać wielu Response.Write's).


Wielokrotna odpowiedź.Write's

Poniższy przykład ilustruje jeden ze sposobów wyświetlania zapytania 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>

W przypadku dużych zapytań może to spowolnić czas przetwarzania skryptu, ponieważ wiele poleceń Response.Write musi być przetwarzanych przez serwer.

Rozwiązaniem jest utworzenie całego ciągu znaków, od <table> do </table>, a następnie wypisanie go - za pomocą Response.Write tylko raz.



Metoda GetString()

Metoda GetString() umożliwia wyświetlenie ciągu tylko z jednym Response.Write. Eliminuje również kod do...loop i test warunkowy, który sprawdza, czy zestaw rekordów znajduje się w EOF.

Składnia

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

Aby utworzyć tabelę HTML z danymi z zestawu rekordów, wystarczy użyć trzech z powyższych parametrów (wszystkie parametry są opcjonalne):

  • coldel - HTML używany jako separator kolumn
  • rowdel - kod HTML używany jako separator wierszy
  • nullexpr - kod HTML do użycia, jeśli kolumna ma wartość NULL

Uwaga: Metoda GetString() jest funkcją ADO 2.0. ADO 2.0 można pobrać pod adresem https://www.microsoft.com/data/download.htm .

W poniższym przykładzie użyjemy metody GetString() do przechowywania zestawu rekordów jako ciągu 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>

Powyższa zmienna str zawiera ciąg wszystkich kolumn i wierszy zwróconych przez instrukcję SQL SELECT. Pomiędzy każdą kolumną pojawi się kod HTML </td><td>, a między każdym wierszem pojawi się kod HTML </td></tr><tr><td>. Spowoduje to utworzenie dokładnego kodu HTML, którego potrzebujemy, z tylko jednym Response.Write.