DevTrain Startseite Visual Studio 1 Magazin  
  
  
SUCHEN:  
ARTIKEL ONLINE: 525   

Kategorien
.NET
Datenbanken
Web
XML

Allgemein
Camp
Foren
Events
Persönliche Einstellungen
Registrieren
Prämien Shop
Kontakt
Impressum
Über DevTrain

Autoren


   Autor: Bernhard Elbl Artikel Drucken
        
Recordsets in Tables mit "GetString" von ADO

Recordsets in HTML darstellen gehört zur täglichen Arbeit eines ASP-Programmierers. Ein bischen "Do Until" hier, etwas "Loop" da, dazwischen noch etwas "Response.Write rs.Fields..." und schon ist ein Recordset im Browser.
Allerdings ist das nicht die schnellste Methode. Für jedes Tabellen-Feld wird "Response.Write" ausgeführt, oder noch schlechter; das HTML-Table wird als String generiert und mit "Response.Write" ausgegeben. Immer wird also viel Script vom IIS interpretiert, z.B. 100-mal "Response.Write...". ASP wird interpretiert und ist deshalb um ein vielfaches langsamer als Kompilierte Applikationen. Und bei der String-Generierung werden sehr sehr viele Bytes kopiert und verschoben, ist also noch mal langsamer. Anders ist es, wenn Sie GetString von ADO verwenden.
GetString von ADO
= konvertiert ein komplettes Recordset in einen String. Spalten- und Zeilenwerte lassen sich mit benutzerdefinierten Trennzeichen versehen.
Alles was man also tun muss, ist die Trennzeichen als HTML-TABLE-Tags zu definieren. Sie lassen sich Ihr HTML-Table also von einer COM-Komponente erstellen, die sicher schneller ist als ASP-Script.

Sample: GetString-Methode zum erstellen eines HTML-Tables
sSQL = "SELECT TOP 20 [CustomerID], ContactName, CompanyName FROM Customers"
set conn = Server.CreateObject("ADODB.Connection")
set rs = Server.CreateObject("ADODB.Recordset")
conn.Open Application("ToNW_ConnectionString")
rs.Open sSQL, conn, adOpenForwardOnly, adLockReadOnly
 
' Kopf-Zeile mit Spaltennamen genieren
Response.Write "<table border=""1""><tr bgcolor=""red"">"
for i = 0 to rs.Fields.Count - 1
 Response.Write "<td>" & rs.Fields(i).Name & "</td>"
next
 
' Table mit GetString genieren
Response.Write "</tr><tr><td>"
Response.Write rs.GetString(adClipString,100,"</td><td>", "</td></tr><tr><td>", "")
Response.Write "</td></tr></table>"
set rs = nothing
set conn = nothing

TIP!!!
GetString können Sie auch einsetzen, wenn Sie z.B. Recordsets in CSV-Files konvertieren möchten.

DevTrain Camp - Schneller zum .NET 3.5 Developer
 
Verwandte Artikel      Verlinkte Dokumente
    Keine Links vorhanden

  Erfasst am: 13.02.2002
  Gültig bis: 15.03.2002
90 Ratings
Bewertung: 40,9%
schlecht    sehr gut  

 
© Copyright 2007 ppedv AG